Access - Ayuda comando RunSQL

 
Vista:
sin imagen de perfil
Val: 27
Ha disminuido su posición en 17 puestos en Access (en relación al último mes)
Gráfica de Access

Ayuda comando RunSQL

Publicado por Ad (25 intervenciones) el 29/07/2021 23:35:32
Buenas tardes amigo,

Espero me puedan ayudar, tengo problemas con ulguno código que agrego a un formulario, este formulario es para dar alta y baja de usuarios, con el alta no hay problema, pero cuando trato de dar de baja a un usuario es donde tengo problemas, para dar de baja a los usuario primero lo quiero mover a otra tabla de usuarios dados de baja y despues borrar el registro.
Para mover el usuario a la tabla de usuario dados de baja utilizo el siguiente código

Private Sub Btn_confirmar_E_Click()
Dim SQLMov As String

SQLMov = "INSERT INTO UsuariosBaja " _
& "SELECT Usuarios.* FROM Usuarios " _
& "WHERE (((Usuarios.Baja)=True);)"

DoCmd.RunSQL SQLMov

pero me marca error y no se porque, incluso me marca error si solo uso el select
SQLMov = "SELECT Usuarios.* FROM Usuarios "
DoCmd.RunSQL SQLMov

Me pueden decir que estoy haciendo mal. gracias


SAludos. . .
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

Ayuda comando RunSQL

Publicado por Anonimo (2502 intervenciones) el 30/07/2021 00:30:54
SQLMov = "INSERT INTO UsuariosBaja SELECT * FROM Usuarios WHERE Baja <> 0"

La otra no tiene sentido (porque carece de destino), las consultas de selección se utilizan como orígenes de datos para los objetos (formularios, consultas creadas con el asistente, informes o (lo mas habitual desde VBA : los Recordset.

Nota:
TRUE o FALSE no creo que lo entienda como valor dentro de la consulta en ese entorno, se ha de utilizar el valor real (0 y <>0 o el clásico cero y menos uno')
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
sin imagen de perfil
Val: 27
Ha disminuido su posición en 17 puestos en Access (en relación al último mes)
Gráfica de Access

Ayuda comando RunSQL

Publicado por Ad (25 intervenciones) el 30/07/2021 15:35:54
Gracias por tu respuesta, pero aun no me sigue dando falla, con la finalidad de resolver este error que me aparece hice la siguienet prueba.
Cambie la instruccion a
SQLMov = "SELECT Usuarios.baja FROM Usuarios WHERE Usuarios.baja <>0"
DoCmd.RunSQL SQLMov

y me aparece el siguiente error
La accion ejecutarSQL requiere como argumento una instrucción SQL

Que estoy haciendo mal?

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

Ayuda comando RunSQL

Publicado por Anonimo (2502 intervenciones) el 30/07/2021 21:39:43
Una consulta de selección carece de sentido si a los datos seleccionados no se les da destino (ojea en la ayuda de Access las diferencias entre 'consultas de selección' y 'consultas de Acción') que van 'juntas pero no revueltas'.

Al parecer no has captado al 100% el contenido de mi anterior mensaje o no le das crédito.
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
sin imagen de perfil
Val: 27
Ha disminuido su posición en 17 puestos en Access (en relación al último mes)
Gráfica de Access

Ayuda comando RunSQL

Publicado por Ad (25 intervenciones) el 02/08/2021 23:17:38
Si me queda claro, pero con todo respeto a ti es a quien no le queda claro que marca error, incluso la sentencia que tu me sugieres me marca error, sé que estoy haciendo algo mal, pero no es a lo te refieres,

como te dije, me aparece el siguiente error
La accion ejecutarSQL requiere como argumento una instrucción SQL

Pero en el entendido que estoy mal dime una sentencia que funcion, para realizar las pruebas


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

Ayuda comando RunSQL

Publicado por Anonimo (2502 intervenciones) el 03/08/2021 00:41:03
Tendrás que escribir a los creadores de Access y exigirles que haga lo que tu consideras correcto: que ejecute una consulta de selección como lo hace con las consultas de acción..

La consulta que propuse tiene (obligatoriamente) que pasar por el filtro de que se correspondan los nombres y tipos de los objetos implicados, no hay que perder de vista que es un ejemplo (no un traje a medida sin conocer y medir a quien hacerle la camisa).
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