Access - Generar sentencia SQL dinamica

 
Vista:

Generar sentencia SQL dinamica

Publicado por Hernan* (8 intervenciones) el 01/12/2003 17:03:28
Quiero armar un formulario donde el usuario pueda seleccionar de un combo el nombre de la tabla, de otro los campos, de otro el campo por el cual quiere ordenar, etc y al hacer click en ejecutar me haga una consulta con esos parametros...
¿Como lo puedo hacer?
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

Generar sentencia SQL dinamica

Publicado por Alejandro (4142 intervenciones) el 04/05/2023 00:08:49
Para generar una sentencia SQL dinámica en Access, puede seguir los siguientes pasos:

1. Crea un formulario con los controles que permitan al usuario seleccionar la tabla, los campos y el campo de ordenación. Puede utilizar cuadros combinados para mostrar las opciones disponibles.

2. En el evento "Al hacer clic" del botón "Ejecutar", construye la sentencia SQL utilizando los valores seleccionados por el usuario en los cuadros combinados.

3. Utiliza la función DoCmd.RunSQL para ejecutar la sentencia SQL.

A continuación, se muestra un ejemplo de código que puede utilizar para construir la sentencia SQL dinámica en el evento "Al hacer clic" del botón "Ejecutar":

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub btnEjecutar_Click()
    Dim strSQL As String
    Dim strTabla As String
    Dim strCampos As String
    Dim strOrden As String
 
    'Obtener valores seleccionados en los cuadros combinados
    strTabla = Me.cboTabla.Value
    strCampos = Me.cboCampos.Value
    strOrden = Me.cboOrden.Value
 
    'Construir la sentencia SQL
    strSQL = "SELECT " & strCampos & " FROM " & strTabla
 
    If strOrden <> "" Then
        strSQL = strSQL & " ORDER BY " & strOrden
    End If
 
    'Ejecutar la sentencia SQL
    DoCmd.RunSQL strSQL
End Sub

Este ejemplo construye una sentencia SQL SELECT utilizando los valores seleccionados por el usuario en los cuadros combinados. Si se ha seleccionado un campo de ordenación, el código agrega la cláusula ORDER BY a la sentencia SQL. Finalmente, utiliza la función DoCmd.RunSQL para ejecutar la sentencia SQL construida.
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