Puede usar Access como una aplicación front-end y, a continuación, vincular a tablas en un servidor back-end, como SQL Server. De forma predeterminada, la mayoría de las consultas se ejecutan localmente en el motor de base de datos de Access ACE. En algunos casos, Access puede ejecutar una consulta de forma remota en SQL Server, según la sintaxis SQL y otros factores. Para obtener más información, vea "Motor de base de datos JET versión 3.0: conectividad ODBC" en las white papers de JET y ODBC redescubridas.

A menudo, sin embargo, desea ejecutar explícitamente una consulta en un servidor de base de datos. Esto se hace para ayudar a mejorar el rendimiento: los servidores de bases de datos tienen una mayor potencia de procesamiento que un equipo de escritorio y puede devolver un subconjunto más pequeño de datos a través de la conexión de red. Para ejecutar una consulta en un servidor de base de datos, use un consulta de paso a través que es una instrucción Transact SQL (TSQL) que se conecta a SQL Server mediante una cadena de conexión ODBC. Por ejemplo, puede pasar una instrucción SELECT para devolver datos a una hoja de datos, formulario, informe o control de lista, ejecutar el equivalente de las consultas de acción (lenguaje de manipulación de datos (DML), llamar a procedimientos almacenados y realizar tareas administrativas (lenguaje de definición de datos (DDL) instrucciones).

Nota    Los resultados de una consulta de paso a través son de solo lectura. Para editar directamente datos en una hoja de datos o formulario, cree una tabla vinculada a una vista indizada. Para obtener más información, vea Crear vistas indizadas.

  1. Conectarse a una base de datos de servidor.

    Para obtener más información sobre cómo vincular a SQL Server, vea Importar o vincular a datos en una base de datos de SQL Server y Vincular o importar datos desde una base de datos de Azure SQL Server.

  2. Seleccione Crear > Diseño de consulta.

  3. Si es necesario, cierre el cuadro de diálogo Agregar tablas(Mostrar tabla en Access 2013.

  4. Seleccione Diseño >paso a través.

    Access oculta la cuadrícula de diseño de la consulta y muestra SQL vista.

  5. Si no aparece la hoja de propiedades de la consulta, presione F4 para mostrarla.

  6. En la hoja de propiedades, haga clic en el cuadro de la propiedad CONEXIÓN ODBC Str y, a continuación, realice una de las siguientes acciones:

    Para obtener una cadena de conexión:

    1. En el panel de navegación, haga clic con el botón derecho en una tabla vinculada al origen de datos deseado y seleccione Administrador de tablas vinculadas.

    2. En el cuadro de diálogo Administrador de tablas vinculadas, active la casilla del origen de datos y, a continuación, seleccione Editar.

    3. En el cuadro de diálogo Editar vínculo, copie el texto en el cuadro Cadena de conexión.

    1. Seleccione Generar Botón Generador.

    2. Siga las indicaciones para crear un archivo DSN que contenga la información de cadena de conexión. Para obtener pasos detallados, vea Importar o vincular a datos de una base de datos SQL Server y Vincular o importar datos desde una base de datos de Azure SQL Server datos.

    Después de crear una conexión de archivo DSN, la cadena de conexión ODBC se almacena internamente en la base de datos de Access. Este es un truco para obtener una copia de esa cadena:

    1. Busque un nombre de tabla vinculado en el panel de navegación con la conexión ODBC que desee.

    2. Presione Ctrl+G. para abrir la ventana inmediato de VBA.

    3. Escriba: el código siguiente:

      ?CurrentDb.TableDefs("<table name>").Connect

      Pero sustituya por <nombre de tabla> nombre de tabla vinculado desde el paso a.

    4. Copie la cadena devuelta en la propiedad ODBC Connect Str.

  7. Escriba la consulta en SQL vista.

    Nota   Hay diferencias importantes entre access SQL y SQL Server TSQL, especialmente con sintaxis, nombres de funciones y argumentos de función. Para más información, vea Comparar Access SQL con SQL Server TSQL.

    Sugerencia    Cree la consulta TSQL en SQL Server Management Studio y, a continuación, copie y pegue el SQL en SQL Vista. Esto garantiza que la consulta tenga la sintaxis correcta. Si no tiene acceso cómodo a una base de datos de SQL Server, considere la posibilidad de instalar Microsoft SQL Server Express edition en el escritorio, que admite hasta 10 GB y es una forma gratuita y fácil de ejecutar y comprobar la migración.

  8. Considere la posibilidad de establecer propiedades relacionadas adicionales:

    • Devuelve registros     Algunas SQL instrucciones devuelven registros, como SELECT, y otros no, como UPDATE. Si la consulta devuelve registros, establezca esta propiedad en Sí; si la consulta no devuelve registros, establezca esta propiedad en No.

      Nota    Las consultas de paso a través pueden devolver varios conjuntos de resultados, pero en una hoja de datos, formulario, informe o variable de conjunto de registros, solo se usa el primer conjunto de resultados. Para recuperar varios conjuntos de resultados, use una consulta de crear tabla como se muestra en el ejemplo siguiente:

      SELECT <pass-through query name>.*
      INTO <local table name>
      FROM < pass-through query name >

      Debe usar el asterisco (*) porque cada conjunto de resultados puede tener columnas diferentes. Cada conjunto de resultados se guarda en una tabla independiente y los números se anexan a los nombres de tabla locales en consecuencia. Por ejemplo, si se devuelven tres conjuntos de resultados, los nombres de tabla serían: <nombre de tabla local>, <nombre de tabla local>1, <nombre de tabla local>2.

    • Registrar mensajes    Especifique si desea devolver mensajes de la base SQL datos en una tabla de mensajes de Access. El nombre de la tabla tiene el formato, nombre de usuario: nn, donde nombre de usuario es el nombre de inicio de sesión del usuario actual y nn es un número a partir de 00.

    • Tiempo de espera de ODBC    Especifique el número de segundos que debe esperar antes de que se produzca un error de tiempo de espera cuando se ejecute una consulta. El valor predeterminado es 60 segundos. Puede haber retrasos debido al tráfico de red o al uso pesado del servidor de bases de datos.

    • Max Records    Especifique el número máximo de registros que desea devolver. Es posible que tenga recursos del sistema limitados o que desee probar los resultados con una pequeña cantidad de datos.

  9. Cuando termine de escribir la consulta, seleccione Diseño > Ejecutar. La consulta se envía al servidor de bases de datos para su procesamiento.

Vea también

Referencia de SQL Transact-https://docs.microsoft.com/en-us/sql/t-sql/language-reference?view=sql-server-2017

Consulta con Transact-SQL

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¿Cómo de satisfecho está con la calidad de la traducción?
¿Qué ha afectado a tu experiencia?

¡Gracias por sus comentarios!

×