|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。odbc|数据|数据源几种注册ODBC数据源的办法
国防科年夜丁浩
ODBC(OpenDatabaseConnectivity,开放式数据库互连)是一种使用程序接口(API)标准。它界说了一个尺度例程集,利用它们使用程序可会见数据源中的数据。使用程序经由过程援用API的函数能够间接利用ODBC,或使用数据会见工具(DAO)或远程数据工具(RDO)来利用ODBC。可是,在完成ODBC时,我们必需起首设置ODBC情况,举行数据源的注册,如许才干在对数据库举行编程时,对数据源举行毗连、会见和操纵。本文先容几种经常使用的注册ODBC数据源的办法。
手工设置
1.ODBC数据源办理器
在举行数据库开辟时,为了到达设置ODBC,举行DSN界说注册的目标,微软给出了一个手工操纵的办理办法。在Windows9X操纵体系的把持面板中,有一个名为“ODBC数据源(32位)”的图标,能够经由过程它激活专门为用户设置ODBC情况的程序(ODBCDataSourceAdministrator,ODBC数据源办理器)。在Windows2000操纵体系中,上述图标被安排在把持面板的“办理工具”内里。
这个用于设置ODBC情况的程序叫做桌面驱动程序,它撑持数种DBMS(DatabaseManagementSystem,数据库办理体系)。当用户想增添一个数据源和一个所必要的驱动程序时,能够经由过程ODBC数据源办理器的设置对话框设置特定范例的数据库。年夜多半情形下,在编写对数据库操纵的程序时,我们最少必要晓得诸如数据库文件名、体系(当地或远程)、文件夹等信息,同时要给数据源定名。
2.界说数据源的范例
用户能够界说以下三品种型的数据源:
用户数据源:作为位于盘算机当地的用户数据源而创立的,而且只能被创立这个数据源的用户所利用;
体系数据源:作为属于盘算机或体系而不是特定用户的体系数据源而创立的,用户必需有会见权才干利用;
文件数据源:指定到文件中作为文件数据源而界说的,任何已准确地安装了驱动程序的用户皆可使用这类数据源。
3.数据源注册的步骤
以MicrosoftAccess为例,假如在C:myfile文件夹里创立了一个名为myexample.mdb的数据库文件,其注册步骤以下:
在把持面板里找到“ODBC数据源”图标,翻开数据源办理器的交互界面;
笔者创立的数据库文件是供本机上的用户利用的,以是这里选择“用户DSN”;
然后按下“增加”按钮,在弹出的数据源办理器对话框里,为本人所要创立的数据源选择一个驱动程序,本文的数据库文件是用MicrosoftAccess创立的,以是要选择“MicrosoftAccessDriver(*.mdb)”;
按“完成”按钮后,进进一个题目为“ODBCMicrosoftAccess安装”的界面,在个中设置“数据源名”为“mydatasource”,拔取数据库文件“C:myfilemyexample.mdb”,然后断定便可。
如许我们就完成了一个复杂的ODBC数据源的注册。固然,在以上的步骤中,用户能够依据本人的分歧必要,设置分歧的选项。
注册停止后,我们即可以在对数据库的编程中,操纵该数据库了。
在VB中注册数据源
在VB中对数据库举行编程时,能够使用RegisterDataSource办法为ODBC数据源输出毗连信息到Windows注册表中。它的语法是:
RegisterDataSourceDSN,driver,silent,attributes
个中参数代表的寄义分离为:
DSN:字符串表达式,它是在援用数据源形貌信息块时所利用的名字。比方,假如数据源是一个ODBC远程数据库,这就是服务器的名字;假如是用户DSN,则是注册的数据源的名字。
drive:字符串表达式,暗示ODBC驱动程序的称号。它并非ODBC驱动程序静态毗连库(DLL)文件名。比方,SQLServer是驱动程序名,而SQLSRVR.DLL是DLL文件名。必需安装ODBC及响应的驱动程序。
silent:布尔范例值,假如不想显现ODBC驱动程序对话框,用以提醒指定驱动程序的信息,该值就为True;假如但愿显现ODBC驱动程序对话框,该值就为False。假如silent为True,那末attributes必需包括一切必须的指定驱动程序的信息。
attributes:字符串表达式,它是一个要增加到ODBC.INI文件中的关头字列表。编写程序时,能够依据必要选择多少attributes的参数举行设置。
比方:我们能够编写以下的VB程序,到达与下面手工注册一样的目标。程序清单以下:
SubRegisterDataSource()
DimstrAttribsAsString
’制作关头字字符串。
’C:myfilemyexample.l.mdb数据库文件名(包括路径)
strAttribs=“DBQ=”_
&“C:myfilemyexample.mdb”_
&Chr$(13)&“OemToAnsi=No”_
&Chr$(13)&“SERVER=SEQUEL”_
&Chr$(13)&“Network=DBNMPNTW”_
&Chr$(13)&“Database=WorkDB”_
&Chr$(13)&“Address=EQUELPIPEQLQUERY”
’创建新的注册的DSN。
rdoEngine.rdoRegisterDataSource“mydatasource”,
“MicrosoftAccessDriver(*.mdb)”,True,
strAttribs
EndSub
PrivateSubForm_Load()
CallrdoRegisterDataSource
EndSub
注重:为了在代码中利用rdoEngine和远程数据工具,必需先在“援用"对话框中设置一个到MicrosoftRemoteDataObject2.0工具库的援用,不然在第一次援用rdoEngine工具时会招致编译毛病。
使用注册表兼并
1.办理思绪
考察ODBC数据源注册后对Windows注册表的修正情形,我们能够发明所注册的数据源对Windows注册表的影响关头会合在[HKEY_CURRENT_USERoftwareODBCODBC.INI]里。
如许,我们导出[HKEY_CURRENT_USERoftwareODBCODBC.INI],每次以之为模板,把所要注册的数据源信息到场到注册表导出文件的对应地位,然后再将该文件与体系注册表兼并便可。
2.详细操纵
起首,我们要弄分明Regedit及其参数的寄义。Regedit是翻开体系注册表的命令。在“入手下手运转”中输出便可。它的三个参数寄义以下:
Regedit/emyfile.reg:暗示把注册表文件导出到myfile.reg文件中,相称于复制全部注册表文件到myfile.reg中;
Regedit/cmyfile.reg:暗示把myfile.reg导进注册表,相称于用该文件的内容掩盖了注册表的内容;
Regedit/smyfile.reg:暗示把myfile.reg文件的内容与注册表文件的内容举行兼并。
我们只需在注册表中将有效的部分导出,尔后将所要注册的数据源的信息到场,再与体系注册表兼并就能够了。这个兼并的历程,我们既能够手工输出来完成,也能够经由过程编程完成主动兼并。
注重:为了避免误操纵,必定要将体系注册表作一次备份。
小结
从平安的角度思索,笔者首推使用在Windows把持面板中的ODBC数据源办理工具来举行数据源注册,以避免因对注册表的不熟或忽略形成不用要的丧失。固然,另有一些使用工具,能够完成对ODBC数据源的注册,用户能够依据分歧的需求选择利用。
这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或--silent选项的任何一个。 |
|