¿Qué archivos de encabezado y bibliotecas se deben cargar para usar SQL incorporado en lenguaje C?
La depuración de aplicaciones SQL C integradas específicas de VC++6.0 y SQL Server2000 se puede dividir en cinco pasos: 1. Inicialización del entorno 2; precompilar; 3. compilar; 4. conectar; 5. ejecutar. Los métodos operativos importantes se presentan en detalle a continuación.
1. Inicialización del entorno
(1) SQL Server2000 proporciona una interfaz especial para su SQL incorporado; esta interfaz no se instala durante la instalación predeterminada, por lo tanto, es necesario extraer devtools. rar al directorio del sistema de SQL Server (es decir, todos los archivos en la carpeta devtools). Si el sistema operativo está instalado en la unidad C, el directorio del sistema de SQL Server es C:\Program Files\Microsoft SQL Server. (Como alternativa, elija instalar las herramientas de desarrollo al instalar Microsoft SQL Server 2000 para preparar los archivos de encabezado y los archivos de biblioteca necesarios para usar el lenguaje SQL incorporado).
(2) Inicialice el entorno del compilador de Visual C++ 6.0. Ejecute el archivo en la línea de comando: \Microsoft Visual Studio\VC98\Bin\vcvars32.bat.
(3) Inicialice el entorno precompilado de SQL Server. Ejecute el archivo en la línea de comando: \Devtools\samples\esqlc\setenv.bat.
(4) Configuración del entorno VC++6.0. La configuración específica se divide en los siguientes tres pasos [:
①Herramientas->opciones->directorios->Incluir archivos: Agregar C:\Program Files\Microsoft SQL Server\devtools\include.server para la base de datos desarrollo Los archivos de encabezado se incluyen en el entorno del proyecto.
②Herramientas->opciones->directorios->Archivos Lib: Agregue C:\Program Files\Microsoft SQL Server\devtools\x861ib. Incluya el paquete de software utilizado para el desarrollo en el proyecto.
③ proyecto->Configuración->Enlace->Módulos de objeto/biblioteca, agregue archivos de biblioteca: SQLakw32.lib, Caw32.lib. Los dos archivos están separados por espacios.
2. Precompilación
El compilador del lenguaje C no puede reconocer las declaraciones SQL en la aplicación y debe convertirlas en declaraciones C a través del preprocesador. El preprocesador de SQL Server es nsqlprep.exe. nsqlprep.exe se encuentra en MSSQL\Binn, donde se registra la fecha de instalación de SQL Server. Si la base de datos de SQL Server está instalada de forma predeterminada, debe copiar el contenido de binn.rar al directorio especificado.
Microsoft SQL Server 2000 proporciona un programa precompilador, nsqlprep.exe, para precompilar programas SQL incorporados para generar programas fuente en C. En realidad, reemplaza las declaraciones SQL incorporadas en el programa SQL incorporado con llamadas a funciones al archivo de tiempo de ejecución Sqlakw32.dll, y luego el archivo de tiempo de ejecución llama a la biblioteca de vínculos dinámicos Ntwdblib.dll para acceder al servidor de base de datos Microsoft SQL Server 2000 a través de la red.
La sintaxis común del precompilador nsqlprep es:
nsqlprep ESQL_File /SQLACCESS /DB server_name.database_name /PASS login.password
ESQL_File debe estar precompilado Incrustado Programa SQL. SQLACCESS notifica a nsqlprep que cree automáticamente los procedimientos almacenados correspondientes para declaraciones SQL estáticas en programas SQL incorporados; /DB server_name.database_name especifica el nombre del servidor y la base de datos que se conectarán; /PASS login.password proporciona el nombre de inicio de sesión y la contraseña correspondiente.
El siguiente programa demo.sqc lee el valor au_fname correspondiente a la persona cuyo au_lname es blanco de la tabla de autores en las publicaciones de la base de datos del servidor de base de datos hushaobo y lo guarda en la variable first_name para su visualización. . (El usuario conectado a la base de datos es sa y la contraseña correspondiente es 1982)
#include
void main()
{ p>
EXEC SQL BEGIN DECLARE SECTION;
char first_ name[40];
char last_name[]="Blanco";
EXEC SQL FINAL DE LA SECCIÓN DE DECLARACIÓN;
EXEC SQL CONECTAR A hushaobo.pubs
USUARIO sa.1982
EXEC SQL SELECCIONE au_fname EN :first_name de los autores DONDE au_lname = :apellido_nombre ;
EXEC SQL DESCONECTAR TODO;
printf("nombre: % s\n",primer_nombre);
}
Ejecute en la línea de comando: nsqlprep demo.sqc /SQLACCESS /DB hushaobo.pubs /PASS sa.1982
Luego se generará demo.c. Solo necesita agregar el archivo al proyecto VC. y compilarlo.
3. Compile, conecte y ejecute
Cree un proyecto de "aplicación de consola WIN32" en VC++6.0 y luego agregue el archivo c precompilado al proyecto, compílelo y conectarse para generar un programa ejecutable que accede a SQL Server. Visual C++ 6.0 requiere el uso de las bibliotecas de vínculos dinámicos SQLakw32.d11 y SQLaiw32.d11 al compilar y conectarse; aunque estos dos archivos se han copiado a la carpeta MSSQL\Binn en el directorio de instalación de SQLServer junto con el archivo binn.rar, aún así es necesario. Es necesario agregar sus rutas a la variable de ruta del sistema para que el programa pueda encontrarlas cuando se ejecuta.
Método 1: Copie estos dos archivos al subdirectorio system32 del directorio de su sistema operativo.
Método 2: Mi PC->Propiedades->Avanzado->Variables de entorno->Ruta->Editar, agregue el valor de la ruta al valor de la variable; el intervalo entre la nueva ruta y la ruta existente es; .
Tenga en cuenta que al ajustar el programa, no incluya el cursor en el nombre del archivo, de lo contrario puede ocurrir un error.