折腾了很久,终于搞定了。找个地方记下来。
主要步骤:
1.新建一个后缀名为sqc的文件,在其中写入程序,包括c代码和使用数据库的代码
2.用db2提供的预处理程序将sqc预编译得到c文件
3在vs下编译c得到exe
首先是一个简单的程序,保存在c.sqc下,主要功能是连接数据库并选出其中一个表里的唯一一个数据,输出在终端
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sqlca.h>
EXEC SQL INCLUDE SQLCA;
main()
{
EXEC SQL BEGIN DECLARE SECTION;
char userid[9];
EXEC SQL END DECLARE SECTION;
EXEC SQL CONNECT TO DWCTRLDB;
EXEC SQL SELECT SID INTO :userid FROM s ;
printf( "id = %s/n", userid );
EXEC SQL CONNECT RESET;
return 0;
}
运行db2cmd,在打开的终端里,转到c.sqc保存的目录,输入命令
db2 connect to DWCTRLDB
连接到数据库,其中最后一个是数据库名
然后运行
db2 prep c.sqc
将sqc预编译为c文件
在vs中打开c文件