Creación de aplicaciones de SQL incorporado escritas en C o C++ (Windows)

Después de escribir el archivo de origen, debe crear la aplicación de SQL incorporado.

Acerca de esta tarea

Algunos pasos del proceso de compilación dependen del compilador que utilice. Los ejemplos proporcionados con cada paso del procedimiento muestran cómo crear una aplicación denominada myapp con un compilador de Microsoft Visual Studio 6.0 , que es un compilador C. Puede ejecutar cada paso del procedimiento individualmente o ejecutar los pasos juntos dentro de un archivo de proceso por lotes desde un indicador de ventana de mandatos de Db2® . Para ver un ejemplo de un archivo de proceso por lotes que se puede utilizar para crear las aplicaciones de ejemplo de SQL incorporado en el directorio %DB2PATH%\SQLLIB\samples\c\ , consulte el archivo %DB2PATH%\SQLLIB\samples\c\bldapp.bat . Este archivo de proceso por lotes llama a otro archivo de proceso por lotes, %DB2PATH%\SQLLIB\samples\c\embprep.bat, para precompilar la aplicación y enlazarla a una base de datos.

  • Una conexión de base de datos activa
  • Un archivo de código fuente de aplicación con la extensión .sqc en C o .sqx en C++ y que contiene SQL incorporado
  • Un compilador C o C++ soportado
  • Las autorizaciones o privilegios necesarios para ejecutar el mandato PRECOMPILE y el mandato BIND

Procedimiento

  1. Precompile la aplicación emitiendo el mandato PRECOMPILE .
    Por ejemplo:
            C application: db2 PRECOMPILE myapp.sqc BINDFILE
            C++ application: db2 PRECOMPILE myapp.sqx BINDFILE
    

    El mandato PRECOMPILE genera un archivo .c o .C, que contiene un formato modificado del código fuente en un archivo .sqc o.sqC y un paquete de aplicación. Si utiliza la opción BINDFILE , el mandato PRECOMPILE genera un archivo de vinculación. En el ejemplo anterior, el archivo de vinculación se denominaría myapp.bnd.

  2. Si ha creado un archivo de vinculación, enlace este archivo a una base de datos para crear un paquete de aplicación emitiendo el mandato BIND. Por ejemplo:
            db2 bind myapp.bnd
    

    El mandato BIND asocia el paquete de aplicación y almacena el paquete en la base de datos.

  3. Compile el origen de aplicación modificado y los archivos de origen que no contienen SQL incorporado para crear un archivo de objeto de aplicación (un archivo .obj).
    Por ejemplo:
           C application: cl -Zi -Od -c -W2 -DWIN32 myapp.c
           C++ application: cl -Zi -Od -c -W2 -DWIN32 myapp.cxx
    
  4. Enlace los archivos de objeto de aplicación con las bibliotecas de lenguaje de host y Db2 para crear un programa ejecutable utilizando el mandato de enlace.
    Por ejemplo:
            link -debug -out:myapp.exe myapp.obj