Consulta registro lista bd

Hola que tal, necesitaba si me podrías dar una idea sobre lo siguiente. Yo he programado en visual basic con bd access haciendo consultas con sql, pero siempre por ej, poniendo un código y me traía los datos de la tabla según ese código, pero no una lista osea ese código erá único, ahora lo que necesito es lo siguiente, por ej yo pongo en visual un número, y que consulte en la base de datos en determinado campo, todo lo que tengo con ese numero (ya que es un valor que puede estar en varios registros) en forma de lista, con dbgrid o algo por el estilo no se bien como es, osea algo que vaya pasando yo con un botón al registro siguiente etc... Lo que resulte más fácil aunque sea sin sql.
Desde ya muchas y espero tus comentario
Atentamente
Jorge,
3

3 respuestas

Respuesta
1
Bueno según entiendo lo que quieres es una lista donde se encuentre el valor buscado, no importa si están otros datos ahí, si es eso podrías hacer lo siguiente:
Mediante un ciclo recorrer toda tu tabla e ir buscando el valor requerido e irlo anexando a un control grid, sería algo como lo que sigue:
Private Sub Command1_Click()
Dim i As Integer, MAX As Integer
Data1.RecordSet.MoveLast
MAX=Data1.RecordSet.RecordsCount
Data1.RecordSet.MoveFirst
For i=1 To MAX
DoEvents
If InStr(txtReferencia.Text,Text1.Text)<>0 Then
MsFlexGrid1.Rows=i
MsFlexGrid1.Row=i
MsFlexGrid1.Col=1
MsFlexGrid1.Text=Text1.Text 'No recuerdo si es text o celltext
MsFlexGrid1.Col=2
MsFlexGrid1.Text=Text2.Text 'No recuerdo si es text o celltext
Data1.RecordSet.MoveNext
End If
Next
End Sub
Este programa lo desarrollo en otro lugar sin vb, por lo que es probable que marque errores, ya que no tengo muy buena memoria y a veces confundo las instrucciones, jejej, pero si te da problemas me dices para ver como corregirlo.
En este caso Text1 y Text2 son controles de texto invisibles asociados a dos campos de una tabla, suponiendo que tu tabla solo tenga dos campos a consultar, previamente hay que tener un control data asociado a una base de datos y una tabla, también los controles de texto asociados al control data para poder operar, vamos a ir moviendo registro por registro hasta que lleguemos al final y en cada campo buscamos si se encuentra el valor del texto de referencia, si lo está no importa acompañado de que lo anexamos al control grid y así por el estilo.
Respuesta
1
Si juegas con los % podrás notar otros resultados de interés, por ejemplo "%Buscar" salen los registro que terminan en esa cadena
"Buscar%" salen los registros que empiezan en esa cadena
Suerte
Utiliza el comodín % en el where por ejemplo, desde VB debes hacer lo siguiente
Where tabla.campo like '%" & Buscar & "%' de esta forma busca debe ser la cadena a buscar en el campo, si vas a probar en access reemplaza el % por *.
Suerte
Respuesta
1
Sugiero que utilices la forma de extracción de datos que se define con el ADO y se puede realizar con un grid, algo como lo siguiente:
dim rs as new ADODB.Recordset
set rs = new ADODB.recordset
squery = "select * from mitabla where micampo=1"
rs.activeconecction = miconexion
rs.open squery
if not rs.eof then
do while not rs.eof
grid1.rows = grid1.rows + 1
grid1.row = grid1.rows
grid1.col = 1
grid1.text = rs.fields(0)
rs.movenext
loop
end if
Esto lo tomas como base y lo adecuas de acuerdo a lo que necesites.
Te sugiero verificar la página http://msdn.microsoft.com
Para ver ejemplos mejores y verificar cualquier duda de como iniciar o mejorar cualquier código de las propiedades mencionadas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas