Visual Basic - Ejecutar Consulta SQL creada en Access

Life is soft - evento anual de software empresarial
 
Vista:

Ejecutar Consulta SQL creada en Access

Publicado por Javier Catalán (1 intervención) el 10/07/2007 23:30:52
Hola amigos del foro, espero que me puedan ayudar.

Resulata que tengo que ejecutar una consulta creada en Access a la cual hay que asignarle el valor que quiero buscar. En Access funciona bien pero no puedo enlazarla bien con Visual 6.

estoy haciendo esto:
Dim bdatos As Database
Dim consulta As String

Set bdatos = OpenDatabase(App.Path & "\basedatos.mdb")
bdatos.Execute Cons_Access, text1

Text1 es donde ingreso el valor que quiero buscar.

estoy probando este tipo de consultas para que la aplicacion no haga el trabajo, sino que la base de datos envie la informacion, para agilizar mas el tema

Si me ayudan estare enormemente agradecido
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

RE:Ejecutar Consulta SQL creada en Access

Publicado por Matías Freire (421 intervenciones) el 11/07/2007 15:33:34
Primero...

Después del nombre de la consulta no va coma, simplemente un espacio y el primer parámetro.

Segundo...
Si el parámetro que espera la consulta es un string, deberías agregar las comillas simples al inicio y al final del parámetro (si el parametro es numerico, no le debes poner las comillas).... ejemplo (en el ejemplo voy a reemplazar las comillas simples por el signo $ para que sea más visible):

bdatos.Execute "Cons_Access $" & Text1 & "$"

de esta forma, si el contenido de Text1 fuera "unParametro" el resultado te quedaría:

ConsAccess 'unParametro'

Tercero...
Por las dudas, si lo anterior no te funciona, prueba agregando la palabra clave "EXEC" antes del nombre de la consulta. Ejemplo:

bddatos.Execute "EXEC Cons_Access $" & Text1 & "$"

Te comenté esto último, porque yo genero los recordsets pasandole el nombre de la consulta en el método Open del recordset, y éste necesita de esa palabra clave cuando se trata de una consulta que está grabada en la base. No sé si cuando utilizas el método Execute del objeto connection tambien hace falta.

Espero que todo esto te haya servido de ayuda cualquier duda enviame un mail.

saludos!
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