Como hago una consulta en una base de datos con el dato de una columna de un datagridview en visual basic 2010

Quisiera generar una consulta sql con el contenido de la primera columna si contiene algún dato,, el punto es que se como hacer la consulta pero no se como hacer referencia a esa celda en especial, si es un inventario entonces se busca por la columna Código y al encontrar dicho código en la base de datos entonces debería generar otra consulta hacuiendo el descuento de la cantidad es decir las que ya están menos las que se registrando, debe hacerse el mismo proceso con cada celda que no este vacía de la columna Código.

Cuando tengo los datos en un textbox hago la siguiente consulta SQL y me funciona perfectamente

   consult = "SELECT * FROM   inventario WHERE Codigo = '" & textbox1.Text & "'"

pero no se como hacer referencia a la a las celdas que no esten vacias en la columna codigo, si ahi 10 lineas de datos debe generarce 10 veces el proceso

1 Respuesta

Respuesta

Los grid están formado por celdas y columnas y su referencia en vb.net se hace así

datagrid.item(columna,fila).value.

Lo que pasa es que no entiendo una tabla en la cual el campo código pueda estar vació. Se supone que ese campo es la clave principal de la tabla. Si no fuera así, supongo que tendrás otro campo como clave principal. Te digo esto porque si has puesto más filas en el grid que registros muestras tendrías que parar el bucle que recorre el grid de alguna manera para ganar tiempo y no esperar que llegue al final.

Si tienes las mismas filas que la consulta entonces se haría así entendiendo que es en visual basic. En C# es distinto::

dim x as integer

x=0

Do

if datagrid.item(0,x).value<>"" then

consult = "SELECT * FROM   inventario WHERE Codigo = '" & datagrid.item(0,x).value & "'"

end if

x+=1

Loop while datagrid.rowcount<x

Si tienes más filas en el grid que registros mostrados, se debe suponer que tienes una clave en la cual no falta ningún dato y que no tienes porque mostrarla.

dim x as integer

x=0

Do

if datagrid.item(0,x).value<>"" then

consult = "SELECT * FROM   inventario WHERE Codigo = '" & datagrid.item(0,x).value & "'"

end if

x+=1

Loop while datagrid.item(columna clave,x).value<>""

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas