您现在的位置: 天极网 > 开发频道 > 动态配置ODBC数据源
全文

动态配置ODBC数据源

2000-11-30 00:00作者:ilamei 出处:yesky责任编辑:

  不管是是控制面版里面配置ODBC数据源,还是象上面上的通过修改注册表在程序中动态的配置ODBC数据源,都没有离开数据源这个基本概念。在设置好了数据源之后,就可以在应用程序中连接数据源,然后对数据库中的数据进行数据的增加、删除和修改了。

  对数据库中数据的访问,总的来说有两种方法,一种是通过编程环境提供的控件方法,一种就是通过ODBC API。有人也许会说还可以通过BDE的API,其实BDE的API和ODBC的API是同样的一个概念,BDE的API是Borland公司的,只是在他的编译环境下使用,当然,Borland的编译环境下比ODBC还快,但是因为那是他自带的驱动程序,如果数据库要升级的话,原来的BDE中的驱动程序就可能不能用了,所以,我们还是提倡使用ODBC的方法。

  ODBC API函数中通过设置参数,直接和数据库打交道,这样的效率比较高,但是编程变的复杂,而且一不小心就会出错。我们不提倡直接使用ODBC API,而倾向于使用编程环境提供的控件方法来访问。但是,作为一种访问数据库访问的方法,我们在这里还是做一简单的介绍(这里以VB为例子)。(至于通过控件的方法,大家使用的比较多,这里就不多说了。)

  ODBC API函数的声明方法与使用其它动态库函数一样,在VB中使用ODBC API函数之前,必须事先声明将要使用的函数、常量和数据结构。ODBC API函数驻留在ODBC运行动态库ODBC.DLL(16位)或ODBC32.DLL(32位)中,该动态库位于Windows子目录system中。通常做法是在VB项目中单独使用一个模块文件,然后将ODBC API声明语句加入其中。

  下面就是本文实例中使用的模块文件module1.bas的内容。

Declare Function SQLAllocEnv Lib "odbc32.dll" (phenv&) As Integer
Declare Function SQLAllocConnect Lib "odbc32.dll" (ByVal henv&, phdbc&) As Integer
Declare Function SQLAllocStmt Lib "odbc32.dll" (ByVal hdbc&, phstmt&) AsInteger
Declare Function SQLConnect Lib "odbc32.dll" (ByVal hdbc&, ByVal szDSN$,ByVal cbDSN%,
ByVal szUID$, ByVal cbUID%, ByVal szAuthStr$, ByVal cbAuthStr%) As Integer
Declare Function SQLColAttributesString Lib "odbc32.dll" Alias "SQLColAttributes" (ByVal
hstmt&, ByVal icol%, ByVal fDescType%, ByVal rgbDesc As String, ByVal cbDescMax%,
pcbDesc%, pfDesc&) As Integer
Declare Function SQLDisconnect Lib "odbc32.dll" (ByVal hdbc&) As Integer
Declare Function SQLExecDirect Lib "odbc32.dll" (ByVal hstmt&, ByVal szSqlStr$, ByVal
cbSqlStr&) As Integer
Declare Function SQLFetch Lib "odbc32.dll" (ByVal hstmt&) As Integer
Declare Function SQLFreeConnect Lib "odbc32.dll" (ByVal hdbc&) As Integer
Declare Function SQLFreeEnv Lib "odbc32.dll" (ByVal henv&) As Integer
Declare Function SQLFreeStmt Lib "odbc32.dll" (ByVal hstmt&, ByVal fOption%) As Integer
Declare Function SQLGetData Lib "odbc32.dll" (ByVal hstmt&, ByVal icol%,ByVal fCType%,
ByVal rgbValue As String, ByVal cbValueMax&, pcbValue&) As Integer
Declare Function SQLNumResultCols Lib "odbc32.dll" (ByVal hstmt&, pccol%) As Integer
Global Const SQL_C_CHAR As Long = 1
Global Const SQL_COLUMN_LABEL As Long = 18
Global Const SQL_DROP As Long = 1
Global Const SQL_ERROR As Long = -1
Global Const SQL_NO_DATA_FOUND As Long = 100
Global Const SQL_SUCCESS As Long = 0
(更多的ODBC API,可以在MSDN里面查到)另外,在VB子目录samples\remauto\db_odbc中有两个文本文件ODBC16.TXT和ODBC32.TXT,分别存有所有16位和32位ODBC API函数、常量和数据结构的声明语句,编程时可以从中拷贝所需的声明语句。
共4页。 9 1 2 3 4 :

软件资讯·软件下载尽在天极软件

相关搜索:
相关文章及软件
关注此文读者还看过
热门关注
特别推荐
网友关注
软件下载
娱乐下载
驱动下载
文章排行
本周
本月
最近更新
关于我们|About us|网站律师|天极服务|电子杂志|RSS订阅|加入我们|网站地图
TMG
Copyright (C) 1999-2009 Chinabyte.com, All Rights Reserved 版权所有 天极网络
商务联系、网站内容、合作建议:010-82657868
版权声明 在线提交意见反馈 渝ICP证B2-20030003号
经营性网站备案信息 网警备案 中国网站排名
天极传媒:天极网|比特网|IT专家网|IT商网|52PK游戏网|IT分众