LusoRobótica - Robótica em Português

Software => C# => Tópico iniciado por: maurosmartins em 31 de Outubro de 2011, 16:20

Título: MySQL & C#
Enviado por: maurosmartins em 31 de Outubro de 2011, 16:20
Viva pessoal,

gostaria de saber se me podiam ajudar com uma duvida que tenho.

Estou a tentar usar o MySQL num programa C# e isto até é fácil de fazer usando o "conector .NET" que eles fornecem.

O problema é que quando quero fazer um QUERY o resultado é fornecido (pelo menos nos exemplos que vi) de maneira a ser usado pelo componente datagridview.

Eu nao queria usar este componente, queria apenas usar isto como tabelas normais onde pudesse percorrer todos os resultados do QUERY.

um exemplo do que tenho até agora:

Código: [Seleccione]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using MySql.Data;
using MySql.Data.MySqlClient;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        MySqlConnection conn;
        MySqlDataAdapter mAdapter;
        DataSet mDataSet;


        public Form1()
        {
       

            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            string connStr = "server=localhost;user=root;database=rfSTICK;port=3306;password=********;";
             conn = new MySqlConnection(connStr);
            try
            {
                dump.Text="Connecting to MySQL...";
                conn.Open();
                // Perform database operations
            }
            catch (Exception ex)
            {
                dump.Text=ex.ToString();
            }
            conn.Close();
            dump.Text="Done.";
        }





        private void button1_Click(object sender, EventArgs e)
        {
            mDataSet = new DataSet();

            //cria um adapter utilizando a instrução SQL para aceder à tabela
            mAdapter = new MySqlDataAdapter("SELECT * FROM temperaturas",conn);

            //preenche o dataset através do adapter
            mAdapter.Fill(mDataSet, "temperaturas");

            //atribui o resultado à propriedade DataSource da dataGridView
            dataGridView1.DataSource = mDataSet;
            dataGridView1.DataMember = "temperaturas";

        }






    }
}

Se alguém tiver ideia de como isso se pode fazer eu agradecia bastante, é para avisar que não percebo quase nada de C# :D

Cumps, Mauro.
Título: Re: MySQL & C#
Enviado por: engenhocas4you em 31 de Outubro de 2011, 17:23
Podes sar o Mysqldatareader em vez do MySqlDataAdapter, depois vais colocando os dados onde quiseres.

Cumps
Título: Re: MySQL & C#
Enviado por: maurosmartins em 31 de Outubro de 2011, 17:39
Olá engenhocas4you,

como disse não sei quase nada de C#, podias dar mais detalhes?

por exemplo essa tabela que tenho tem vários itens, como os separo? se puderes colocar um exemplo ficaria agradecido

Cumps, Mauro.
Título: Re: MySQL & C#
Enviado por: maurosmartins em 31 de Outubro de 2011, 18:29
@engenhocas4you

consegui :) obrigado pela dica se não fosse isso ainda agora andava aqui a procura.

Código: [Seleccione]
        private void button1_Click(object sender, EventArgs e)
        {
            MySqlCommand command = conn.CreateCommand();
            command.CommandText = "SELECT * FROM temperaturas";

            MySqlDataReader reader = command.ExecuteReader();
            int rowNum = 1;
            while (reader.Read())
            {
                dump.Text=dump.Text + reader["dbID"].ToString();
                rowNum++;
            }
        }

Cumps, Mauro.