Foros del Web » Programando para Internet » ASPX (.net) »

Recuperar datos de una consulta SQL c#

Estas en el tema de Recuperar datos de una consulta SQL c# en el foro de ASPX (.net) en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 19/04/2008, 04:53
 
Fecha de Ingreso: marzo-2008
Mensajes: 36
Antigüedad: 16 años, 1 mes
Puntos: 0
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
  #2 (permalink)  
Antiguo 19/04/2008, 10:47
Avatar de Fann_Lavigne  
Fecha de Ingreso: diciembre-2004
Mensajes: 622
Antigüedad: 19 años, 4 meses
Puntos: 12
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.
__________________
"Entre Mas Brillante Es Una Mente, Tiene Que Luchar Contra Demonios Internos Mas Poderosos"
[email protected]
  #3 (permalink)  
Antiguo 21/04/2008, 05:26
 
Fecha de Ingreso: marzo-2008
Mensajes: 36
Antigüedad: 16 años, 1 mes
Puntos: 0
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
  #4 (permalink)  
Antiguo 21/04/2008, 10:11
 
Fecha de Ingreso: marzo-2008
Mensajes: 36
Antigüedad: 16 años, 1 mes
Puntos: 0
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
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:34.