Foros del Web » Programación para mayores de 30 ;) » .NET »

Guardar los valores devueltos de una consulta en variables

Estas en el tema de Guardar los valores devueltos de una consulta en variables en el foro de .NET en Foros del Web. Hola chicos. Estoy teniendo un pequeño problema y no consigo encontrar la solución, a ver si me podéis echar una mano, apriori es algo sencillo. ...
  #1 (permalink)  
Antiguo 08/08/2009, 02:52
 
Fecha de Ingreso: agosto-2007
Mensajes: 23
Antigüedad: 14 años
Puntos: 0
Guardar los valores devueltos de una consulta en variables

Hola chicos.

Estoy teniendo un pequeño problema y no consigo encontrar la solución, a ver si me podéis echar una mano, apriori es algo sencillo.

Os comento, lo que quiero es que después de lanzar una consulta select de sql Mobile Edition los campos que devuelva poderlos guardar en variables para poder "jugar" con ellos. Apriori la consulta debe de devolver una sola fila.

Tengo ya generada la conexión con la base de datos y la consulta, eso funciona correctamente pero no sé como hacer para guardar los campos en variables.

En Visual Fox Pro 8 si que sé, me imagino que será similar pero no estoy seguro, en VFP 8 asignas un valor a la consulta y es tan sencillo como nombrar consulta.campo y guardar en variable.

¿Como se hace en Visual Basic.net?

La aplicación que estoy desarrollando es para Windows Mobile, por lo que tengo creada un SQL Mobile Edition. (.sdf)

Gracias anticipadas.
  #2 (permalink)  
Antiguo 10/08/2009, 02:27
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 13 años
Puntos: 188
Respuesta: Guardar los valores devueltos de una consulta en variables

Intentalo igual, obviamente adaptandolo a las necesidades del lenguaje VB.Net.
  #3 (permalink)  
Antiguo 10/08/2009, 03:00
 
Fecha de Ingreso: agosto-2007
Mensajes: 23
Antigüedad: 14 años
Puntos: 0
Respuesta: Guardar los valores devueltos de una consulta en variables

He estado investigando algo mas y ya empiezo a tener algunas cosas claras, la clase que debo de utilizar es DataReader.

Creo la conexión a la base de datos.

Me guardo la consulta en una variable como por ejemplo:

Dim oComando AS New SqlCommand(" SELECT * FROM TABLA",oConexion)

Creamos el DataReader

Dim oDataReader AS SqlDataReader
oConexion.open()
oDataReader = oComando.ExecuteReader()

Y ahora viene mi gran duda sería asi ¿?:

Dim Valor as String
Valor = getString(1) 'El 1 indica el nº de campo

Apriori no necesito realizar ningún bucle ya que el select debería de devolverme una sola fila.

¿Eso es correcto?

Un saludo y gracias

Última edición por blimo86; 10/08/2009 a las 03:09
  #4 (permalink)  
Antiguo 10/08/2009, 04:49
 
Fecha de Ingreso: agosto-2005
Mensajes: 33
Antigüedad: 16 años
Puntos: 0
Respuesta: Guardar los valores devueltos de una consulta en variables

Cita:
Iniciado por blimo86 Ver Mensaje
Dim Valor as String
Valor = getString(1) 'El 1 indica el nº de campo

Apriori no necesito realizar ningún bucle ya que el select debería de devolverme una sola fila.

¿Eso es correcto?

Un saludo y gracias
Si, el 1 indica el valor del numero del campo de la consulta, solo recuerda que siempre se empieza por el cero, segun el codigo que pones quedaría asi:

Dim Valor0 as String
Valor0 = oDataReader.item(0)

Dim Valor1 as String
Valor1 = oDataReader.item(1)

y así sucesivamente. Saludos
  #5 (permalink)  
Antiguo 10/08/2009, 04:55
 
Fecha de Ingreso: agosto-2007
Mensajes: 23
Antigüedad: 14 años
Puntos: 0
Respuesta: Guardar los valores devueltos de una consulta en variables

Ok, gracias así lo probaré
  #6 (permalink)  
Antiguo 10/08/2009, 04:59
 
Fecha de Ingreso: agosto-2007
Mensajes: 23
Antigüedad: 14 años
Puntos: 0
Respuesta: Guardar los valores devueltos de una consulta en variables

Ya lo tengo casí, ahora me dan unos errores en estas dos líneas

Dim oComando As New SqlCommand("SELECT * FROM TABLA", Conexion)
Dim oDataReader As SqlDataReader

Me dice de que ni SqlCommand ni SqlDataReader están definidos, me da a mi que es porque estoy desarrollando para Windows Mobile y es posible que no esté implementado...

El código actual es así:


Cita:
Dim Conexion As System.Data.SqlServerCe.SqlCeConnection
Dim Consulta As System.Data.SqlServerCe.SqlCeCommand

Conexion = New System.Data.SqlServerCe.SqlCeConnection
Conexion.ConnectionString = ("Data Source =" + (System.IO.Path.GetDirectoryName(System.Reflection .Assembly.GetExecutingAssembly.GetName.CodeBase) _
+ ("\BD.sdf;" _
+ ("Password =" + """pass"";"))))

Conexion.Open()

Dim oComando As New SqlCommand("SELECT * FROM TABLA", Conexion)
Dim oDataReader As SqlDataReader
oDataReader = oComando.ExecuteReader()
Dim Valor As String
Valor = oDataReader.item(0)
Un saludo y muchas gracias por vuestra ayuda
  #7 (permalink)  
Antiguo 15/12/2012, 16:16
 
Fecha de Ingreso: diciembre-2012
Mensajes: 1
Antigüedad: 8 años, 7 meses
Puntos: 0
Respuesta: Guardar los valores devueltos de una consulta en variables

Cita:
Iniciado por blimo86 Ver Mensaje
Ya lo tengo casí, ahora me dan unos errores en estas dos líneas

Dim oComando As New SqlCommand("SELECT * FROM TABLA", Conexion)
Dim oDataReader As SqlDataReader

Me dice de que ni SqlCommand ni SqlDataReader están definidos, me da a mi que es porque estoy desarrollando para Windows Mobile y es posible que no esté implementado...

El código actual es así:


Código:
Dim Conexion As System.Data.SqlServerCe.SqlCeConnection
Dim Consulta As System.Data.SqlServerCe.SqlCeCommand

Conexion = New System.Data.SqlServerCe.SqlCeConnection
Conexion.ConnectionString = ("Data Source =" + (System.IO.Path.GetDirectoryName(System.Reflection .Assembly.GetExecutingAssembly.GetName.CodeBase) _
+ ("\BD.sdf;" _
+ ("Password =" + """pass"";"))))

Conexion.Open()

Dim oComando As New SqlCommand("SELECT * FROM TABLA", Conexion)
Dim oDataReader As SqlDataReader
oDataReader = oComando.ExecuteReader()
Dim Valor As String
Valor = oDataReader.item(0)
Un saludo y muchas gracias por vuestra ayuda
wow esto lleva mucho tiempo pero para respponderlo lo unico que hace falta a lo de arriba es oDataReader.read()

agregenlo antes de leerlo en esta parte:

oDataReader = oComando.ExecuteReader()
oDataReader.read() 'ESTO ES LO QUE FALTABA
Dim Valor As String
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 17:47.