> Obtener Campo Determinado De Una Tabla Determinada mediante vb.net

Iniciado por rob1104, 20 Febrero 2008, 16:13 PM

0 Miembros y 1 Visitante están viendo este tema.

rob1104

Hola a todos, me estoy volviendo loco y no encuentro solucion, ¿hay alguna forma de obtener el valor de un campo en especifico, similar a lo que en visual basic 6 es:
adodc1.recordset.fields("NombredelCampo")

Utilizo Visual Basic 2005 y MS Access con un BindingSource, pero cualquier forma es bienvenida.

Saludos
Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.

43H4FH44H45H4CH49H56H45H

#1
BindingSource can to connect this way
Dim mic As SqlConnection = New SqlConnection("....")
Try
mic.Open
Dim dat As SqlDataAdapter = New _
SqlDataAdapter("Select campo from Table", mic)
Dim det As DataTable = New DataTable
dat.Fill(det)
Me.dataGridView1.DataSource = det
Finally
mic.Close
End Try

Generally applies

-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W

Hadess_inf

CitarImports system.data.sqlclient

dim con as new sqlconnection("...")
dim da as sqldataadapter
dim dtb as data.datatable

sub form_load(...)
da = new sqldataadapter("select * from usuario",con)
dtb = new data.datatable
da.fill(dtb)
if dtb.rows.count <> 0 then
   dim a as integer
   for a = 0 to dtb.rows.count-1
      msgbox dtb.rows(a)("NOMBRE").tostring()
   end for
end if
end sub

Donde:

'Libreria que usaras para realizar las conexiones a tu base de datos y demas. SI no agregas esto al inicio no podras usar: sqlconnection, sqldataadapter y por ende no podras hacer lo que deseas.
Imports system.data.sqlclient

'variable para tu conexion, aqui definiras los parametros, como servidor, base de datos, etc
dim con as new sqlconnection("...")
'Variable donde almacenaras la consulta que ingreses, es como el recordset del vb6
dim da as sqldataadapter
'Complemento del sqldataadapter, no es necesario que lo uses para este caso, pero a mi se me hace mas sencillo usarlo. Es una tabla, se te hara mas facil el uso de filas y columnas
dim dtb as data.datatable

'Se instancia el sqldataadapter y se le designa la consulta que se desea en este caso la consulta a la tabla usuario. Se requieren dos parametros: (cadena,con), donde cadena representa la consulta y con representa la cadena de conexion (previamente asignada).
da = new sqldataadapter("select * from usuario",con)

'Se instancia la tabla para poder usarla
dtb = new data.datatable

'Se llena la tabla dtb con los datos que retorna la consulta que contiene el adaptador da, en este caso la consulta es: "select * from usuario"
da.fill(dtb)

'Se verifica si la tabla tiene filas, con la propiedad rows.count, esta propiedad retorna cuantas filas tiene la tabla dtb, en el caso que si tenga se ejecuta el bloque de codigo.
if dtb.rows.count<>0 then

'COmo te podras dar cuenta, este es el contados.
for a = 0 to dtb.rows.count-1

'Este es el punto que necesitas, aqui vas a mostrar el campo que necesites de la consulta que hiciste en el sqldataadapter previamente, acontinuacion te explico la sintaxis, y los parametros: Tomaremos el siguiente ejemplo:
                  Campo Nombre
rows(0) --->  JUAN
rows(1) --->  JOSE LUIS
rows(2) --->  MARIELA
rows(3) --->  SILVIA

- rows(a) = rows indica la fila y (a) indica el indice, entonces si a = 2, rows(2) retornara la fila donde el campo nombre es MARIELA, pero aun falta designar que campo queremos que se muestre, en este caso el Nombre.
- rows(a)("nombre").tostring = despues de designar la fila de la cual queremos mostrar los datos, tambien debemos asignar el campo, esto se logra agregando: ("nombre").tostring, donde "nombre" representa el nombre del campo a mostrar y tostring es la funcion que convierte a cadena el campo seleccionado.

dtb.rows(a)("NOMBRE").tostring()

Saludos y espero que te sirva.