Visual Basic - Ayuda para un duro con base de datos

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda para un duro con base de datos

Publicado por lenilax (165 intervenciones) el 06/06/2002 16:24:15
Estimados amigos del foro. No se imaginan cuanto he aprendido con su ayuda. Por eso me siento muy agradecido :-)
Sin embargo, soy muy duro de mollera. Hace dias que no puedo salir de un pantano que se me ha armado con el tema de bases de datos :-(
Nesecito hacer un motor de busqueda. He dado vuelta este foro y otros buscando el codigo que nesecito y, aunque he encontrado mucho material, no he podido adaptarlo a mi proyecto y siempre termino en error.
Trabajo con ADO y a puro codigo. He puesto lo siguiente en la parte superior de un modulo:

Public MiConexion As New ADODB.Connection
Public MyRst As New ADODB.Recordset

En el form load pongo lo siguiente:

MiConexion.Open "Provider=MSDataShape;Data Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\..........\db0.mdb"

Luego, frente a un evento cualquiera pongo:

MyRst.Open "Select * from operations", MiConexion, adOpenDynamic, adLockReadOnly, adCmdText

Pero hasta aqui no mas llego. Lo que nesecito es buscar, para hacerlo simple, todos los registros que contengan "Gi" en la tabla "operations" de la base de datos ligada a Miconexion. He probado con:

MyRst.Open "Select * From operations where Customer Name like '*gi*'"

o

MyRst.open "select * from operations where Customer Name like ´gi%´"

y muchas otras. Los errores son, o bien de codigo, o bien de conexion cerrada, o funcion no permitida, etc.
Si algun alma programadora y caritativa pudiera compartir conmigo su conocimiento de como hacerlo paso a paso me sacaria de un gran problema.
Muchas pero muchas gracias. :-)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Wilfredo
Val: 8
Ha aumentado su posición en 9 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Ayuda para un duro con base de datos

Publicado por Wilfredo (120 intervenciones) el 07/06/2002 08:45:54
Mira Campeon te voy a ayudar de una manera muy facil

'Codigo para la conexion
Dim MiConec as adodb.connection
dim MiRstREgistro as ADODB.Recordset
'Esto es lo mismo que has hecho tu con public
luego en el load del form haces esto:

Set Miconnect=new ADODB.connection
with Miconnection
.CursorLocation=AdUseServer 'Tambien puedes usar aduseclient
.Open "Provider=Microsoft.JET.OLEDB.4.0;Data SOURCE=" & APP.PATH & "\Base.MDB;Persist Security Info=False"
End With
Set MiRstReegistro=New ADODB.Recordset
With MiRstRegistro
.CursorLocation=AduseClient
.CursorType=adOpenStatic
.LockType=adLocReadOnly
End With

'Para Buscar haces esto

MiRstRegistro.Open "Select campo From Tabla Where Campo like' " & txtcampo.Text & "%' ", CnMiConnection, adOpenStatic, adLockReadOnly

'Ahora estos datos lo puedes ver en un grid, ademas el textbox te servira para buscar lo tu quieras.

Espero te sirva de algo, eso si que funciona, esta probado, Pero no te acostumbres a que te hagan la tarea eh?

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para un duro con base de datos

Publicado por lenilax (165 intervenciones) el 07/06/2002 15:05:33
Wilfredo Patricio, muchas gracias por tu atencion.
Tienes razon. No es bueno acostumbrarse a lo facil ni aqui ni en ninguna circunstancia. Creeme si te digo que me he quebrado la cabeza con el tema del Sql y visual. Lo del paso a paso era en realidad un recurso desesperado de quien ya no sabe que hacer y debe cumplir con un trabajo. Por lo mismo te estoy tremendamente agradecido. Ahora voy a probar el codigo. Te aviso por este medio como me fue. :-)
Gracias again.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para un duro con base de datos

Publicado por lenilax (165 intervenciones) el 07/06/2002 16:00:59
Amigo Wilfredo. Esto es lo que me sucede y me sigue sucediendo. Tu me dices que el codigo funciona, probado. Yo no tengo por que no creerte. De hecho te creo. Pero tu creeme que por algun motivo que no he podido detectar a mi no me funciona. Lo que hice, siguiendo tus instrucciones, fue lo siguiente:

Dim MiConec As ADODB.Connection
Dim MiRst As ADODB.Recordset
Dim Registros As Integer

Private Sub Form_Load()
Set MiConec = New ADODB.Connection
With MiConec
.CursorLocation = adUseServer 'Tambien puedes usar aduseclient
.Open "Provider=Microsoft.JET.OLEDB.4.0;Data SOURCE=" & App.Path & "\db0.mdb;Persist Security Info=False"
End With
Set MiRst = New ADODB.Recordset
With MiRst
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockReadOnly
End With
End Sub

Private Sub Command1_Click()
MiRst.Open "Select Customer_Name From operations Where Customer_Name like' " & Text1.Text & "%' ", MiConec, adOpenStatic, adLockReadOnly
Registros = MiRst.RecordCount
MiRst.Close
End Sub

Resultado, recordcount = 0, a pesar de que hay al menos un registro correspondiente al text1.text. Que te puedo decir, cuando llego a este punto es cuando empiezo a dar manotazos :-)
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para un duro con base de datos

Publicado por lenilax (165 intervenciones) el 07/06/2002 16:36:17
Solucionado. Muchas gracias Wilfredo. :-) :-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar