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

Ayuda para un principiante

Estas en el tema de Ayuda para un principiante en el foro de ASPX (.net) en Foros del Web. Hola, perdoden si la pregunta es facil. lo que pasa es que tengo una bd en sqlserver 2005 y estoy haciendo una pagina web con ...
  #1 (permalink)  
Antiguo 14/01/2008, 14:58
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Ayuda para un principiante

Hola, perdoden si la pregunta es facil.

lo que pasa es que tengo una bd en sqlserver 2005 y estoy haciendo una pagina web con c#.

La idea es que tengo unos textbox donde ingreso el rut de un proveedor, y mi idea es q en el label q esta al lado me muestre la razon social de este proveedor.

Como se puede hacer eso?

he intentado haciendo esto:

SqlDataAdapter objAdapter2 = new SqlDataAdapter("select razon_social from proveedor", SqlConn);
DataSet ds2 = new DataSet();
objAdapter2.Fill(ds2, "proveedor");

this.lblmuestra_rs.text =

nose si esta bien la idea, falta por hacer, nose como poder decirle al lblmuestra_rs que muestre el resultado de la consulta



de antemano gracias.
  #2 (permalink)  
Antiguo 14/01/2008, 16:09
Avatar de mdavila  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 16 años, 9 meses
Puntos: 13
Re: Ayuda para un principiante

Te falta el where de la sentencia sql.
dim Cmd as new SqlCommand
Cmd.CommandText="select razon_social from proveedor where proveedro_id=id"
Cmd.Connection= SqlConn

y en el label pones:
SqlConn.connection.open()
this.lblmuestra_rs.text = Cmd.ExecuteSacalar()
SqlConn.connection.close()
  #3 (permalink)  
Antiguo 16/01/2008, 12:21
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Ayuda para un principiante

this.lblmuestra_rs.text = Cmd.ExecuteSacalar()

no entendi eso que hace ExecuteSacalar(); ?

Última edición por F3l1p3; 16/01/2008 a las 13:18
  #4 (permalink)  
Antiguo 16/01/2008, 16:26
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Ayuda para un principiante

SqlConnection SqlConn = new SqlConnection("Data Source=xxx;Initial Catalog=xx;Persist Security Info=True;User ID=xxx;Password=xxx");

SqlDataAdapter objAdapter = new SqlDataAdapter("select razon_social from proveedor where rut = '" + tbrut.Text + "' ", SqlConn);
DataSet ds = new DataSet();

objAdapter.Fill(ds, "proveedor");


this.tbmuestra_rut.Text = ds.ToString(); <-- Nose que poner aca para q me muestre el resultado!!
  #5 (permalink)  
Antiguo 16/01/2008, 18:41
Avatar de mdavila  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 16 años, 9 meses
Puntos: 13
Re: Ayuda para un principiante

ExecuteSacalar(); se utiliza cuando queres retornar solo un resultado, siendo muy util y no necesario tener un dataset u otro objeto similar, lo asigna directamente entendes....


Es asi ok:
this.tbmuestra_rut.Text = ds.Tables["proveedor"].Columns[0].ToString();
  #6 (permalink)  
Antiguo 16/01/2008, 19:07
Avatar de mdavila  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 16 años, 9 meses
Puntos: 13
Re: Ayuda para un principiante

Perdon es asi:

SqlConnection SqlConn = new SqlConnection("Data Source=xxx;Initial Catalog=xx;Persist Security Info=True;User ID=xxx;Password=xxx");

SqlDataAdapter objAdapter = new SqlDataAdapter("select razon_social from proveedor where rut = '" + tbrut.Text + "' ", SqlConn);
DataSet ds = new DataSet();

objAdapter.Fill(ds, "proveedor");
string Temp = new string();

foreach (DataRow dr in ds.Tables["proveedor"].Columns){
Temp = dr[0].ToString();
}
vtbrut.Text = Temp;


Pero hay formas mejores y mas eficientes de hacerlo sin tanta cosa ok, pero si lo entendes mejor asi......

Esta es un poquito mejor;

SqlConnection SqlConn = new SqlConnection("Data Source=xxx;Initial Catalog=xx;Persist Security Info=True;User ID=xxx;Password=xxx");

SqlCommand objAdapter = new SqlCommand("select razon_social from proveedor where rut = '" + tbrut.Text + "' ", SqlConn);
SqlDataReader dr;

dr = objAdapter.ExecuteReader();


while (dr.Read())
{
tbrut.Text = dr.GetValue(0).ToString();
}
  #7 (permalink)  
Antiguo 17/01/2008, 06:20
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Ayuda para un principiante

string Temp = new string();

me dice que "ninguna sobrecarga para el metodo string acepta 0 argumentos" el new.

Última edición por F3l1p3; 17/01/2008 a las 11:27
  #8 (permalink)  
Antiguo 17/01/2008, 12:32
Avatar de mdavila  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 16 años, 9 meses
Puntos: 13
Re: Ayuda para un principiante

solo declara una variable de tipo string...
  #9 (permalink)  
Antiguo 17/01/2008, 13:31
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Ayuda para un principiante

pero la declaracion de la variable se hace exactamente como me dijiste.




PD: Sorry por molestar tanto pero como dice el post soy un principiante en esto, y con muchas ganas de aprender :D
  #10 (permalink)  
Antiguo 17/01/2008, 14:35
 
Fecha de Ingreso: enero-2008
Mensajes: 24
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Ayuda para un principiante

ia solucione el problema de la declaracion pero me tira el sig error:

foreach (DataRow dr in ds.Tables["proveedor"].Columns) <- No se puede convertir un objeto de tipo 'System.Data.DataColumn' al tipo 'System.Data.DataRow'.

Última edición por F3l1p3; 18/01/2008 a las 06:27
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 06:02.