Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: sebastianarroyo en 24 de Agosto de 2006, 03:56:39 PM

Título: Consulta SQL!!!
Publicado por: sebastianarroyo en 24 de Agosto de 2006, 03:56:39 PM
estoy usando Visual Basic 6, estoy haciendo una consulta con SQL de un campo tipo fecha de la siguiente manera:

Dim mibase As Database
Dim buscar As Recordset
Set mibase = OpenDatabase("C:\Sound Media\Ultima_97.mdb")
Set buscar = mibase.OpenRecordset("Select * from Tabla_base where Tabla_base!Fechagraba<=#" & Text8.Text & "# order by Tabla_base!Fechagraba asc")

Ese codigo funciona bien, pero para buscar en un campo de tipo texto me da error, que tengo que modificarle???

Desde ya muchas gracias....
Título: Consulta SQL!!!
Publicado por: jazcks en 24 de Agosto de 2006, 04:39:17 PM
pues, ni idea en vbasic, pero en sql standard, seria quitar los # que son para delimitar la fecha, y poner comillas dobles:

select * from tabla where campo = "pepe"


tb se puede usar un comodin: todo lo que empiece por "pe":

select * from tabla where campo like "pe%"


lo unico que tengas en cuenta las comillas dentro de un label delimitado ya por comillas, en vbasic no se como sera, lo normal seria usar \" para indicarlas


Set buscar = mibase.OpenRecordset("select * from tabla where campo = \"pepe\" ")
Título: Consulta SQL!!!
Publicado por: shephiroth en 24 de Agosto de 2006, 08:00:05 PM
Solo añadir que en sql tradicional (y en access me suena que tambien) le da lo mismo "nombre" que 'nombre', asi que si quieres en vez de tener que truncar las doles comillas puedes utilizar la comilla simple (esta al lado del =).
Set buscar = mibase.OpenRecordset("select * from tabla where campo = 'pepe'")