交友约会| 杂志期刊| 小说| 论坛| 电影下载| 两性知识| 电脑知识| 汽车| 旅游| 收藏

在Windows环境下使用Cygwin中的gcc编译器实现DB2的嵌入SQL编程

来源: 作者: 出处:综艺读书 2006-04-09 
关 键 词:数据库  windows  informix  ie  db2  

  Windows下使用C语言+嵌入SQL实现DB2开发

Cygwin,gcc的介绍和安装在前面的文章有将过,请参考

在Windows中使用Cygwin环境下的gcc编译器编译Informix ESQ/C程序

对于DB2的嵌入SQL程序,有以下步骤:
1)编写dbconn.sqc程序(一个简单的连接数据库,查询并显示的例子)

2)在Cygwin命令行中键入 db2cmd 启动一个新的db2命令行窗口

在db2命令行窗口中:
3)预编译
db2 prep dbconn.sqc
生成dbconn.c文件
4)编译
gcc -I"C:\Program Files\IBM\SQLLIB\include" dbconn.c "C:\Program Files\IBM\SQLLIB\lib\db2api.lib"
生成a.exe文件
在<在Windows中使用Cygwin环境下的gcc编译器编译Informix ESQ/C程序>文章中提到在使用gcc编译时如果路径中包含空格的路径,就不能正确解析。
这次发现可以将路径用双引号引起来就可以了。
5)执行a.exe,成功

如果需要生成外部绑定文件,(db2执行预编译时默认是做绑定了)
1)db2 prep dbconn.sqc bindfile
生成
dbconn.c, dbconn.bnd
2)手工绑定
db2 bind dbconn.bnd
3)绑定完后一定要重新编译,否则报-818,
db2 ? SQL0818
预编译时由预编译器生成的时间戳记与绑定时存在的包内的时间戳记不同

附录1
dbconn.sqc程序
#include <stdio.h>
#include <string.h>
#include <sql.h>

int main()
{
    EXEC SQL INCLUDE SQLCA;

    EXEC SQL BEGIN DECLARE SECTION;
        char firstnme[12+1];
    EXEC SQL END DECLARE SECTION;

    long RetCode = SQL_RC_OK;
    char ErrorMsg[1024];

    EXEC SQL CONNECT TO sample USER zhangjij USING happyday;

    EXEC SQL SELECT firstnme INTO :firstnme FROM employee WHERE empno='000099'; 
    if (sqlca.sqlcode != SQL_RC_OK)
    {
        RetCode = sqlaintp(ErrorMsg, sizeof(ErrorMsg), 70, &sqlca);

        switch (RetCode)
        {
        case -1:
            printf("ERROR: Insufficient memory.\n");
            break;
        case -3:
            printf("ERROR: Message file is inaccessible.\n");
            break;
        case -5:
            printf("ERROR: Invalid SQLCA, bad buffer, or bad buffer length specified.\n");
            break;
        default:
            printf("sqlca.sqlcode=[%ld], Message= [%s] \n", sqlca.sqlcode, ErrorMsg);
            break;
        }
    }

    printf("OK = [%s] \n", firstnme);
   
    EXEC SQL DISCONNECT CURRENT;

    return(0);
}
    更多文章 更多内容请看DB2  DB2中的数据处理  Java编程开发手册专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
综艺读书宗旨
相关专题
·Windows操作系统安装 (12125篇文章)
·Windows权限设置 (7791篇文章)
·DB2 (316篇文章)
·DB2中的数据处理 (355篇文章)
·Windows操作系统安全集 (14739篇文章)
·Java编程开发手册 (7378篇文章)
·Windows频道 (7397篇文章)
热点标签: 数据库  windows  informix  ie  db2  
最新技术文档
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
百度推荐,商机无限
搜索您感兴趣的内容
Web 全站
综艺电脑频道编辑信箱  告诉我们您想看的专题或文章

友情互链 | 收藏本站 | 联系我们 | 在线留言 | 京ICP备08008424号|