Access - VISTAS Y USUARIOS

 
Vista:

VISTAS Y USUARIOS

Publicado por ambalcalde (2 intervenciones) el 20/11/2006 23:43:42
Hola.

Estoy usando access 2003 y estoy creando consultas directamente en SQL. Estoy con creaciones de tablas que me funcionan bien. El problema es que no puedo crear vistas (CREATE VIEW) ni usuarios (CREATE USER). Al ejecutar las consultas me dice que la instrucción CREATE TABLE es incorrecta, es decir, no reconoce las sentencias ve vistas y usuarios.

Me gustaría saber qué pasa y si tiene solución para poder ejecutar estas instrucciones en SQL directamente. Sé que hay un solución a través de VBA, pero no me interesa.

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 Alejandro

Creación de vistas y usuarios en SQL directamente

Publicado por Alejandro (4142 intervenciones) el 28/07/2023 18:19:13
En Access 2003, la funcionalidad de ejecutar sentencias SQL para crear vistas y usuarios directamente desde el editor de consultas no está disponible. Esto se debe a que Access utiliza el motor de base de datos Jet/ACE, que tiene limitaciones en cuanto a la compatibilidad con ciertas instrucciones SQL.

Si necesitas crear vistas y usuarios en Access, la solución más sencilla y estándar es hacerlo a través de VBA utilizando código de manipulación de datos (Data Definition Language - DDL). A continuación, te proporciono un ejemplo de cómo hacerlo utilizando VBA:

1. Crear una vista con VBA:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub CrearVista()
    Dim db As DAO.Database
    Dim sql As String
 
    ' Abre la base de datos
    Set db = CurrentDb()
 
    ' Define la sentencia SQL para crear la vista
    sql = "CREATE VIEW NombreVista AS SELECT Campo1, Campo2 FROM NombreTabla WHERE Campo1 > 10;"
 
    ' Ejecuta la sentencia SQL
    db.Execute sql
 
    ' Cierra la conexión con la base de datos
    db.Close
    Set db = Nothing
End Sub

2. Crear un usuario con VBA:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub CrearUsuario()
    Dim db As DAO.Database
    Dim sql As String
 
    ' Abre la base de datos
    Set db = CurrentDb()
 
    ' Define la sentencia SQL para crear el usuario
    sql = "CREATE USER NombreUsuario PASSWORD 'Contraseña';"
 
    ' Ejecuta la sentencia SQL
    db.Execute sql
 
    ' Cierra la conexión con la base de datos
    db.Close
    Set db = Nothing
End Sub

Recuerda que para utilizar el código VBA, debes habilitar la opción de seguridad "Acceso de confianza" en Access y tener permisos de administrador en la base de datos para realizar estas operaciones.

Si deseas evitar utilizar VBA, es posible que necesites considerar otras soluciones, como migrar la base de datos a un sistema de gestión de bases de datos más completo, como SQL Server o MySQL, que admitan completamente las instrucciones CREATE VIEW y CREATE USER.

Espero que esta solución te sea útil para crear vistas y usuarios en Access utilizando VBA. ¡Buena suerte!
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