CSDN博客

img zxwind

初次尝试windows下DB2嵌入c/c++

发表于2008/9/29 20:19:00  466人阅读

 折腾了很久,终于搞定了。找个地方记下来。

 

主要步骤:

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文件,这里要进行一点设置:

1.在工具-选项中,将db2的include文件夹和lib文件夹分别加入include路径和library files路径

2在工程-设置中将db2的lib文件下的db2api.lib加入工程需要的库中

 

上述设置因vs的版本会有一点差异,具体设置方法可以参考网上资料

 

然后编译之前得到的c文件,如果程序没有错误,就得到可以运行的exe了。

 

如果使用sqx文件,则可以得到c++的源文件cxx

 

阅读全文
0 0

相关文章推荐

img
取 消
img