Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: lexoazul en 5 Enero 2012, 01:30 am



Título: duda con query de mysql
Publicado por: lexoazul en 5 Enero 2012, 01:30 am
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.

Código:
            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.
Código:
textBox.Text = Resultado;
Alguien tiene una idea muchas gracias


Título: Re: duda con query de mysql
Publicado por: Shell Root en 5 Enero 2012, 01:36 am
Y al hacerlo así que obtienes, sólo 1 registro?, porque no lo concatenas...

Código
  1. Resultado += Convert.ToString(Comando.ExecuteScalar());


Título: Re: duda con query de mysql
Publicado por: lexoazul en 5 Enero 2012, 01:38 am
si solo un registro obtengo y es lo que me muestra.
dices que lo concatene pero como hago eso??.


Título: Re: duda con query de mysql
Publicado por: Shell Root en 5 Enero 2012, 01:57 am
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 (http://msdn.microsoft.com/es-es/library/system.data.sqlclient.sqlcommand.executescalar(v=vs.80).aspx). Creo que para lo que necesitas deberías de usar un DataReader (http://msdn.microsoft.com/es-es/library/haa3afyz(v=vs.80).aspx).


Título: Re: duda con query de mysql
Publicado por: lexoazul en 5 Enero 2012, 01:59 am
ok muchas gracias voy a leer para que sirve e intentare mostrarlo si logro un avance posteare.


Título: Re: duda con query de mysql
Publicado por: 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 ?


Título: Re: duda con query de mysql
Publicado por: lexoazul en 6 Enero 2012, 00:54 am
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:
Código:
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:           :)         ;)