duda con query de mysql

Iniciado por lexoazul, 5 Enero 2012, 01:30 AM

0 Miembros y 2 Visitantes están viendo este tema.

lexoazul

HOla a todos.
Bueno el problema que tengo es que la consulta que estoy haciendo regresa varios campos de respuesta y no se como mostrarlo en un textbox(o en algun otro elemento). aqui le dejo como hago la consulta.


            MySqlConnection Conex = new MySqlConnection();
            string CadenaDeConexion = "Server=localhost;" + "Database=paquetes;" + "UID=root;" + "Password=root;";
            static MySqlCommand Comando = new MySqlCommand();   
            Conex.ConnectionString = CadenaDeConexion;
            Conex.Open();

            string Resultado = "";
            Comando.Connection = Conex;
            Comando.CommandText = "Select nombre from paquete where nombreMicro='empresa1';";
            Resultado = Convert.ToString(Comando.ExecuteScalar());


bueno este es el codigo de conexion y de la consulta lo cual los datos que me regresa estan en "Resultado", pensaba que con solo agregarlo al textBox funcionaria.

textBox.Text = Resultado;

Alguien tiene una idea muchas gracias

Shell Root

Y al hacerlo así que obtienes, sólo 1 registro?, porque no lo concatenas...

Código (csharp) [Seleccionar]
Resultado += Convert.ToString(Comando.ExecuteScalar());
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

lexoazul

si solo un registro obtengo y es lo que me muestra.
dices que lo concatene pero como hago eso??.

Shell Root

Juaz, hace tiempos que no tocaba C# y pense que tan sólo con el += lo concatenabas todo. A lo mejor deberías de leer un poco para que sirve ese ExecuteScalar. Creo que para lo que necesitas deberías de usar un DataReader.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

lexoazul

ok muchas gracias voy a leer para que sirve e intentare mostrarlo si logro un avance posteare.

seba123neo

que yo sepa los comandos solo sirven para ejecutar comandos SQL, por ejemplo INSERT, UPDATE, DELETE,pero si queres hacer un SELECT debes usar un datareader, en el caso de esa libreria de mysql, debe tener un tipo de objeto llamado mysqldaareader no ?
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

lexoazul

Cita de: seba123neo en  5 Enero 2012, 22:55 PM
que yo sepa los comandos solo sirven para ejecutar comandos SQL, por ejemplo INSERT, UPDATE, DELETE,pero si queres hacer un SELECT debes usar un datareader, en el caso de esa libreria de mysql, debe tener un tipo de objeto llamado mysqldaareader no ?
asi tenien mucha razon y de esta forma es como solucione mi problema; de esta forma me quedo el  codigo:

MySqlConnection Conex = new MySqlConnection();
            string CadenaDeConexion = "Server=localhost;" + "Database=paquetes;" + "UID=root;" + "Password=root;";
            static MySqlCommand Comando = new MySqlCommand();   
            Conex.ConnectionString = CadenaDeConexion;
            Conex.Open();

             MySqlDataReader Reader;
             Comando.CommandText = "Select nombre from paquete where nombreMicro='empresa1';";
            Reader = Comando.ExecuteReader();
            while (Reader.Read())
            {
                   textBox.AppendText(Reader["nombre"].ToString());
            }
           


agradezco mucho su ayuda.

:D            ;D           ;-)         :laugh:           :)         ;)