Access - Instrucción update sobre una consulta

   
Vista:

Instrucción update sobre una consulta

Publicado por osatxi (27 intervenciones) el 16/12/2013 10:08:01
Buenos días a todos, y muchas gracias de antemano.
A través de visual basic he utilizado la instrucción update para actualizar tablas, pero no me funciona cuando lo intento hacer sobre consultas que tengo hechas en el access. Os pongo el código:

Dim query As String

query= "UPDATE consulta 1" & "SET consulta1.OP = 1"
docmd.runsql

si este mismo código lo aplico sobre una tabla de access no me da problema, pero cuando es sobre una consulta no me funciona. Si alguien me puede ayudar por favor. 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 Neckkito

Instrucción update sobre una consulta

Publicado por Neckkito (1104 intervenciones) el 22/12/2013 18:19:50
Hola!

El código que has puesto es muy muy raro....

Primero indicas que quieres actualizar "consulta 1" (con espacio) y después, al definir el campo, lo pones sin espacio (consulta1.OP).

Después, a la línea de ejecución le faltaría saber qué SQL ejecutar.

Suponiendo que consulta1 va junto el código sería, por ejemplo:

...
Dim miSql as string
miSql = "UPDATE consulta1 SET consulta1.OP=1"
currentdb.execute miSql
...

Suponiendo que consulta 1 va separado el código sería:

...
Dim miSql as string
miSql = "UPDATE [consulta 1] SET [consulta 1].OP=1"
currentdb.execute miSql
...

Y, lógicamente, consulta1 (junto o separado, da igual) ha de contener un recordset actualizable. Si no es actualizable poca cosa podemos hacer.

Para más info, por si acaso, si ejecutas la consulta1 e intentas cambiar manualmente algún valor, y no te deja, es que su recordset no es actualizable (debería salirte un aviso en la barra de información que hay en la parte inferior de Access). Que sea actualizable o no ya depende de cómo se han estructurado las tablas de la BD y sus relaciones... no es un estándar para poder decir: "esto se hace así".

A ver si logras solucionarlo con estas ideas que te he dado.

Saludos,


http://neckkito.siliconproject.com.ar
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