Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASPX (.net) (http://www.forosdelweb.com/f78/)
-   -   Recuperar datos de una consulta SQL c# (http://www.forosdelweb.com/f78/recuperar-datos-consulta-sql-c-577695/)

putorotupal 19/04/2008 04:53

Recuperar datos de una consulta SQL c#
 
Yo lo que hago es:

cnn = new SqlConnection(cadenaconexion);
cnn.Open();

System.Text.StringBuilder sel = new System.Text.StringBuilder();
sel.Append("SELECT FROM Usuario ");
sel.Append("WHERE Correo_Electronico = @Correo");

SqlCommand cmd = new SqlCommand(sel.ToString(), cnn);

cmd.Parameters.Add("@Correo", SqlDbType.NVarChar, 50);

cmd.Parameters["@Correo"].Value = EmailIntro;
cmd.ExecuteScalar();

Pero no se como recuperar la información. Esta consulta solo devuelve una columna y lo que quiero es recuperar el login y el passsord con el email introducido por el usuario (lo de "has olvidado tu password").

Utilizo Visual studio y estoy programando en c#.

Muchas gracias por la ayuda.

C.6

Fann_Lavigne 19/04/2008 10:47

Re: Recuperar datos de una consulta SQL c#
 
Por que no usas un SqlDataAdapter para leer y warda la data en un DataSet

Código:

Dim ds as New DataSet
Dim adp as New SqlDataAdapter
Dim cnx as New SqlConnection(candenadeonexion)

adp = New SqlDataAdapter("Selecht * From Tabla Where (campo > 1)",cnx)
adp.Fill(ds,"MisDatos")
cnx.Close 'Cierres las conexion por que el adp la abre.

If ds.Tables("MisDatos").Rows.Count > 0 Then 'Si hay mas de una fila hay datos
  'Si solo quieres leer una fila, por lo gral la primera.
Dim str_Algo  as string = ds.Tables("MisDatos").Rows(0)("Nombre de la columna")

'En dado caso de que quieras saber lo de las demas filas, recorres el ds.Tables("MisDatos").Rows con un For Each.

ds.Tables.Remove("MisDatos") 'Al final quitamos la tabla que usamos.
else 'De lo contrario no hay datos, no trajo algo tu consulta
End If

Listo, espero te sirva, y para C# pues casi casi (no al 100% pero casi) es agregarle el punto y coma.

putorotupal 21/04/2008 05:26

Re: Recuperar datos de una consulta SQL c#
 
Lo que estoy haciendo es:

SqlConnection cnn = new SqlConnection(cadenaconexion);

System.Text.StringBuilder sel = new System.Text.StringBuilder();
sel.Append("SELECT COUNT(*) FROM Usuario ");
sel.Append("WHERE Correo_Electronico = @Email");

SqlCommand cmd = new SqlCommand(sel.ToString(), cnn);
cnn.Open();
cmd.Parameters.AddWithValue("@Email", TextBoxEmail.Text);

// El resultado lo guardaremos en una tabla
DataTable tabla = new DataTable();
// Usaremos un DataAdapter para leer los datos
SqlDataAdapter da = new SqlDataAdapter(cmd);
// Llenamos la tabla con los datos leídos
da.Fill(tabla);

DataColumn Nombre = new DataColumn();


this.TextBoxEmail.Text = tabla.Rows[0]["Nombre"].ToString();

cnn.Close();

Pero el error que me sale es:
Column 'Nombre' does not belong to table

Pero ese es el nombre de la columna.

Muchas gracias por la ayuda.

C.6

putorotupal 21/04/2008 10:11

Re: Recuperar datos de una consulta SQL c#
 
Ya lo he coseguido, me faltaba la conexion SQl.
Por si alguno quiere verlo como lo he hecho:

using (SqlConnection cnn = new SqlConnection(this.SqlDataSource1.ConnectionString ))
{
//Usamos la SqlConnection que hemos creado con la BD en diseño
//La conexión se llama ConnectionString

//Uso la conexion y añado lo que quiero buscar
string sel;
sel = this.SqlDataSource1.SelectCommand +
" WHERE Correo_Electronico = @Email";

SqlCommand cmd = new SqlCommand(sel, cnn);
cnn.Open();
cmd.Parameters.AddWithValue("@Email", TextBoxEmail.Text);

// El resultado lo guardaremos en una tabla
DataTable tabla = new DataTable();
// Usaremos un DataAdapter para leer los datos
SqlDataAdapter da = new SqlDataAdapter(cmd);
// Llenamos la tabla con los datos leídos
da.Fill(tabla);

string LoginRecuperado = tabla.Rows[0]["Login"].ToString();
string PasswordRecuperado = tabla.Rows[0]["Password"].ToString();
cnn.Close();
}

Muchas Gracias por vuestra ayuda

C.6


La zona horaria es GMT -6. Ahora son las 01:27.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.