在此推荐一种在程序中使用ODBC API的方法,程序员可以在任何时候都可以用Visual C++编写的程序调用这些API函数来设置ODBC数据源。

动态创建数据源

需要用到的API: SQLConfigDataSource

需要包含的头文件为: #include <odbcinst.h>

需要包含静态库: #pragma comment(lib,”ODBCCP32.lib”)

或者可以包含这个头文件: #include<afxdb.h>

该函数的原型如下:

参数说明如下:

(1)参数 hwndParent 用于指定父窗口句柄,在不需要创建数据源对话框时,可以将该参数指定为NULL。

(2)参数 fRequest 用于指定函数的操作内容,取值如下:

ODBC_ADD_DSN:加入一个新的用户数据源;

ODBC_CONFIG_DSN:修改一个存在的用户数据源;

ODBC_REMOVE_DSN:删除一个存在的用户数据源;

ODBC_ADD_SYS_DSN:增加一个新的系统数据源;

ODBC_CONFIG_SYS_DSN:配置或者修改一个存在的系统数据源;

ODBC_REMOVE_SYS_DSN:删除一个存在的系统数据源;

ODBC_REMOVE_DEFAULT_DSN:删除省缺的数据源说明部分。

 

(3)参数lpszDriver用于指定ODBC数据源的驱动程序类别 .

例如:

为了指定Access数据源,该参数应赋以字符串”Microsoft Access Driver (*.mdb)/0”;

对SQLSERVER数据源,则应赋以字符串”SQL Server” 。

(4)参数 lpszAttributes 用于指定ODBC数据源属性。
对SQL SERVER数据源:

“DSN=MYIMAGE/0 SERVER=MYET/0 DATABASE=Image”

说明:

该字符串指定数据源名称(DSN)为 MYIMAGE  ;

SQLSERVER数据库服务器名(SERVER)为 MYET ;

数据库名称(DATABASE)为Image .

两个需要注意的问题:

  (1)当我们使用 SQLConfigDataSource  ODBC  API函数时必须声明包含系统的odbcinst.h头文件,所以我们再选择workspace窗口中 FileView 打开Header Files中Imageprocess.h ,在其中加入 #include“odbcinst.h” 。

(2)SQLConfigDataSource这个API函数时候必须用到odbccp32.dll,它是Microsoft 提供的32 位ODBC安装和管理的DLL,如果是16 位必须用到odbcinst.dll,odbccp32.dll 有一个import library,所以解决的办法就是把这个odbccp32.lib加到我们的项目中,我们可以打开Project 系统菜单项,选Add to Project子菜单,在其中选Files项,打开VC安装目录下的/vc/lib/目录,文件类型选Library Files(.lib) , 选择其中odbccp32.lib后按OK键。

这是最简单的创建方法,创建了一个名称为 TEST的数据源…

VC++使用ODBC API动态创建SQLServer数据源
Tagged on:         
0 0 投票数
Article Rating
订阅评论
提醒

0 评论
内联反馈
查看所有评论