前段时间做一个信息同步的小工具,用到VC的数据库编程,写这篇日志就当是做个简单的笔记吧,也可做为初学者的一个参考。
本文主要介绍VC通过ODBC/CLI驱动连接DB2数据库,并列举了一些代码,其功能主要为:
1、建立连接;
2、执行SQL语句;
3、查找列举数据库中的表及查询数据库中表的结构,其中表结构包括各字段的名称、数据类型、长度及可否为空。
一、配置开发环境
在开始之前,我们得先搭好开发环境,我使用的开发环境VC 6.0 + DB2 express-c 9.7。首先从IBM网站下载了免费的DB2 express-c 9.7并安装,启动DB2数据库建好表用以测试。 安装完成后创建DB2的数据源驱动,进入“控制面板”=》“管理工具”=》“数据源”,并在数据源管理中添加DB2的数据源。
如果要实现在程序中动态添加数据源,可以通过调用 SQLConfigDataSource 函数来进行配置。如: SQLConfigDataSource(NULL,ODBC_ADD_DSN, "IBM DB2 ODBC DRIVER", "DSN=DB2\0" "UID=db2admin\0" "DBalias=MYDBNAME");
二、创建并配置项目
在VC中新建项目,然后进行配置,主要配置包含文件和引用库的目录。
点击进入VC6.0的“工具”=》“选项”=》“目录”,分别将DB2的INCLUDE目录和LIB目录添加到“Include files”和“Librery files”里面,并将他们移到最上方;
接着,我们得配置好我们的项目,让它支持ODBC,方法是进入项目配置的Link选项卡,在Object/Library modules栏里添加odbc32.lib。
==============================
首先安装IBM DB2 odbc driver
1):可以单独下载DB2 Run-Time Client,大约(86.6m),安装后则odbc驱动程序安装成功。下载地址:ftp://ftp.software.ibm.com/ps /products/db2/fixes2/english-us/db2winIA32v8/fixpak/FP17a_WR21440/FP17a_WR21440_RTCL.exe
2):也可以直接安装ibm db2数据库后,该驱动程序自动安装。数据库下载地址http://www6.software.ibm.com/sdfdl/v2/regs2 /db2pmopn/Express-C/DB2ExpressC9/Xa.2/Xb.AjZr_0m973fVBNZX63eCwwrnyaoISX2bvOX3Ehc/Xc.db2exc_952_WIN_x86.zip/Xd./Xf.LPr.D1vk/Xg.4854742/Xi.swg-db2expresscviper2/XY.regsrvs/XZ.C7tZ8b_Fn0_ruc3stDVpbwY2QpI/db2exc_952_WIN_x86.zip
下面演示如何创建DSN,并连接到db2数据库。
db2数据库信息如下:
IP:192.168.1.46,
端口:50000
用户名:admin
密码:admin
数据库名称:db2Test
设置dsn 为:outbound
步骤:
1.1 打开ODBC数据源管理器
1.2 创建数据源
1.3 添加数据源名称
1.4 ODBC设置
1.4.1 用户名和密码
1.4.2 输入主机名和端口
1.1 打开ODBC数据源管理器
单击“添加”按钮,进入“创建数据源”页面。如图所示:
1.2 创建数据源 选择“IDB DB2 ODBC Driver”单击“完成”,进入数据源名称设置页面。
1.3 添加数据源名称
添加数据源名称,如OutBound, 在下拉框中选择一个“数据库别名”。 如果没有,单击“添加”,直接进入1.3ODBC设置.-》下面的文字可以跳过。 如果有,直接单击“确定”回到 “Odbc数据源管理器”页面。 双击“配置”按钮,输入用户名和密码,勾选保存密码,测试连接成功,即完成。
1.4 ODBC设置
例如我们要连接到192.168.1.46上数据库DB2Test,该数据库的用户名和密码为admin,则需要如下配置,
1.4.1 用户名和密码
输入要连接到对方数据库的用户名和密码,如admin和 admin。
1.4.2 输入主机名和端口
输入主机IP,即192.168.1.46
端口,即50000
数据库名称,即db2Test
别名:可以随便起个下拉框中不重复的名字就可以了
单击确定回到下面。
选择OutBound数据源名称,
打开“配置”按钮,
单击“测试”,弹出“连接成功”对话框。即配置完成。