Compartir a través de


Creación de una aplicación de controlador ODBC de SQL Server Native Client

La arquitectura ODBC tiene cuatro componentes que realizan las siguientes funciones.

Componente Función
Aplicación Llama a las funciones ODBC para comunicarse con un origen de datos ODBC, envía instrucciones SQL y procesa conjuntos de resultados.
Administrador de controladores Administra la comunicación entre una aplicación y todos los controladores ODBC usados por la aplicación.
Controlador Procesa todas las llamadas a funciones ODBC desde la aplicación, se conecta a un origen de datos, pasa instrucciones SQL de la aplicación al origen de datos y devuelve resultados a la aplicación. Si es necesario, el controlador traduce ODBC SQL de la aplicación a SQL nativo usado por el origen de datos.
Origen de datos Contiene toda la información que un controlador necesita para acceder a una instancia específica de datos en un DBMS.

Una aplicación que usa el controlador ODBC de SQL Server Native Client para comunicarse con una instancia de SQL Server realiza las siguientes tareas:

  • Se conecta con un origen de datos

  • Envía instrucciones SQL al origen de datos

  • Procesa los resultados de las instrucciones del origen de datos.

  • Procesa errores y mensajes

  • Finaliza la conexión al origen de datos.

Una aplicación más compleja escrita para el controlador ODBC de SQL Server Native Client también puede realizar las siguientes tareas:

  • Usar cursores para controlar la ubicación en un conjunto de resultados

  • Solicitud de operaciones de confirmación o reversión para el control de transacciones

  • Realizar transacciones distribuidas que impliquen dos o más servidores

  • Ejecución de procedimientos almacenados en el servidor remoto

  • Llamada a funciones de catálogo para consultar los atributos de un conjunto de resultados

  • Realización de operaciones de copia masiva

  • Administración de operaciones de datos grandes (varchar(max), nvarchar(max)y varbinary(max)

  • Uso de la lógica de reconexión para facilitar la conmutación por error cuando se configura la creación de reflejo de la base de datos

  • Registro de datos de rendimiento y consultas de ejecución prolongada

Para realizar llamadas a funciones ODBC, una aplicación de C o C++ debe incluir los archivos de encabezado sql.h, sqlext.h y sqltypes.h. Para realizar llamadas a las funciones de API del instalador odbc, una aplicación debe incluir el archivo de encabezado odbcinst.h. Una aplicación ODBC Unicode debe incluir el archivo de encabezado sqlucode.h. Las aplicaciones ODBC deben estar vinculadas con el archivo odbc32.lib. Las aplicaciones ODBC que llaman a las funciones de API del instalador odbc deben estar vinculadas con el archivo odbccp32.lib. Estos archivos se incluyen en windows Platform SDK.

Muchos controladores ODBC, incluido el controlador ODBC de SQL Server Native Client, ofrecen extensiones ODBC específicas del controlador. Para aprovechar las extensiones específicas del controlador ODBC de SQL Server Native Client, una aplicación debe incluir el archivo de encabezado sqlncli.h. Este archivo de encabezado contiene:

  • Atributos de conexión específicos del controlador ODBC de SQL Server Native Client.

  • Atributos de instrucción específicos del controlador ODBC de SQL Server Native Client.

  • Atributos de columna específicos del controlador ODBC de SQL Server Native Client.

  • Tipos de datos específicos de SQL Server.

  • Tipos de datos definidos por el usuario específicos de SQL Server.

  • Tipos SQLGetInfo específicos del controlador ODBC de SQL Server Native Client.

  • Campos de diagnóstico del controlador ODBC de SQL Server Native Client.

  • Códigos de función dinámica de diagnóstico específicos de SQL Server.

  • Definiciones de tipos de C/C++ para tipos de datos de C nativos específicos de SQL Server (devueltos cuando las columnas enlazadas al tipo de datos de C SQL_C_BINARY).

  • Definición de tipo para la estructura de datos SQLPERF.

  • Copia masiva de macros y prototipos para admitir el uso de api de copia masiva a través de una conexión ODBC.

  • Llame a las funciones de API de metadatos de consulta distribuida para ver listas de servidores vinculados y sus catálogos.

Cualquier aplicación ODBC de C o C++ que use la característica de copia masiva del controlador ODBC de SQL Server Native Client debe estar vinculada con el archivo sqlncli11.lib. Las aplicaciones que llaman a las funciones de API de metadatos de consulta distribuida también deben estar vinculadas con sqlncli11.lib. Los archivos sqlncli.h y sqlncli11.lib se distribuyen como parte de las herramientas del desarrollador de SQL Server. Los directorios Include y Lib de SQL Server deben estar en las rutas de acceso INCLUDE y LIB del compilador, como se muestra a continuación:

LIB=c:\Program Files\Microsoft Data Access SDK 2.8\Libs\x86\lib;C:\Program Files\Microsoft SQL Server\100\Tools\SDK\Lib;  
INCLUDE=c:\Program Files\Microsoft Data Access SDK 2.8\inc;C:\Program Files\Microsoft SQL Server\100\Tools\SDK\Include;  

Una decisión de diseño tomada al principio del proceso de creación de una aplicación es si la aplicación debe tener varias llamadas ODBC pendientes al mismo tiempo. Hay dos métodos para admitir varias llamadas ODBC simultáneas, que se describen en los temas restantes de esta sección. Para obtener más información, vea la referencia del programador de ODBC.

En esta sección

Véase también

SQL Server Native Client (ODBC)