El Guru Programador
Usuario DESCONOCIDO | Registrate Gratis | Usuarios Registrados
Foro de Visual Basic/VB.NET
Foros del Guru > Visual Basic/VB.NET
Usuario Sentencias SQL desde codigo VB
Desconocido
Enviado - 15/3/2003
 
Hola a todos. Estoy haciendo una base de datos en Access y necesitaría saber como puedo lanzar sentencias SQL desde el código VBA de algún control. Me he estado mirando libros y no me han ayudado demasiado xq hablan mucho de objetos DATA (q yo no uso), y a mí lo q me interesaría sería embeber el código SQL en el de Visual si es posible. Tb algo he visto x ahí de objetos ADO (Access Data Object o algo así...), pero no tengo demasiada imformación al respecto. Cualquier tipo de cable q me podais echar...
Gracias
 
Mayron
1 Mensaje(s)
Enviado - 18/3/2003
 
Trabajar con sentencias SQL es muy facil en Visual Basic.

Primero tienes que trabajar con ADODB, esto lo activas en el menú Proyecto luego en referencias luego buscar y eliges Microsfot ActiveX Data Objet Library 2.5 o superior.

Tienes que crear variables de tipo conecion y de tipo recordset. Te voy a poner un ejemplo sencillo de conexion a una DB de Access.

option explicit
private cnn as adodb.connection
private rst as adodb.recordset

Private Sub Form_Load()
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
' Todo en una misma linea
cnn.Open "provider=Microsoft.Jet.OLEDB.4.0; data source= "c:\windows\abc.mdb""
' todo en una misma linea
rst.Open "select * from <tabla>", cnn, adOpenDynamic, adLockOptimistic
' todo en una misma linea
rec.Open "select * from software", cnn, adOpenDynamic, adLockOptimistic

End Sub

' Ahora ya puedes hacer cualquier consulta
' en cualquier boton que diseñes y lo haces
' así:

private sub command1_click()
'Consultar si existe el registro 1
' En una sola linea
set rst = cnn.execute("Select * from <tabla> where <condicion>")

if rst.bof or rst.eof then
msgbox "Registro no encontrado"
else
......
end if
end sub

' y nunca se te olvide en el Unload

private form_unload (cancel as integer)
rst.Close
cnn.Close
Set rst = Nothing
Set cnn = Nothing
end sub

' Espero que te ayude algo....

Att. Mayron Guevara
El Salvador
[email protected]
 
Desconocido
Enviado - 29/3/2003
 
y como se puede hacer para imprimir el resultado de la busqueda sql mostrada en un dbgrid. mi problemas es que me imprime siempre la tabla completa y quiero ver como puedo hacer para imprimir en tiempo de ejecucion esa busqueda. attm. Jason B.
 
Desconocido
Enviado - 24/9/2004
 
Facil, utiliza el Datareport, y ahi tu le das el formato que quieras, y si no quieres que aparezca la tabla pues con el datareport, es más facil o tambien con el Crystalreport.
 
 

 

Contactos myStudio Network