详解odbc数据源的各种连接文本
内容提示:在《外部数据库的连接原理》一讲中我们说过,odbc提供对多种数据库的支持,如dbase、access、MsSql server及oracle,也就是说运用odbc数据源中所提供的连接代码,我们可以实现对多种数据库的连接。以连接access数据库为例,odbc数据源连接文本的格式是:
“driver={数据库驱动程序};dbq=数据库文件;”
在以上连接文本中,如果数据库跟程序在同一目录下,或者用变量defaultdir指定了数据库所在目录,则数据库文件可以不用全路径名,如下即可:
“odbc;dbq=msaccess.mdb;driver={microsoft access driver (*.mdb)};”
如下也可:
“odbc;dbq=msaccess.mdb;defaultdir=d:\downloads\e21;driver={microsoft access driver (*.mdb)};”
如果数据库跟程序不在同一目录下,或者没有用变量defaultdir指定数据库所在目录,则数据库文件需要用全路径名,如下:
“odbc;dbq=e:\quake iii arena\msaccess.mdb;driver={microsoft access driver (*.mdb)};”
以上所说的是连接access数据库的格式,那么连接其他数据库的odbc数据源连接文本又是怎样的?连接不同类型的数据库要使用不同的对应驱动程序,没忘记吧!不同的驱动程序当然它们的参数组合也就不同了,每一种不同驱动程序都有其特定的的参数形式:
⑴、ms access odbc dsnless 连接:
☆、参数:driver 设置值:{microsoft access driver (*.mdb)}
☆、参数:dbq 设置值:实际路径文件名称
☆、例句:
“driver={microsoft access driver (*.mdb)};dbq=c:\somepath\dbname.mdb;uid=admin;pwd=pass; ”
⑵、dbase odbc dsnless 连接:
☆、参数:driver 设置值:{microsoft dbase driver (*.dbf)}
☆、参数:dbq 设置值:实际路径文件名称
☆、例句:
“driver={microsoft dbase driver (*.dbf)};driverid=277;dbq=c:\somepath\dbname.dbf; ”
⑶、oracle odbc dsnless 连接:
☆、参数:driver 设置值:{microsoft odbc for oracle}
☆、参数:dbq 设置值:实际路径文件名称
☆、例句:
“driver={microsoft odbc for oracle};server=oracleserver.world;uid=admin;pwd=pass; ”
⑷、ms sql server dsnless 连接:
☆、参数:driver 设置值:{sql server};
☆、参数:server 设置值:服务器名称
☆、参数:database 设置值:数据表名称
☆、参数:uid 设置值:用户名称
☆、参数:pwd 设置值:密码
☆、例句:
“driver={sql server};server=servername;database=dbname;uid=sa;pwd=pass; ”
⑸、ms text driver dsnless 连接:
☆、参数:driver 设置值:{microsoft text driver (*.txt; *.csv)}
☆、参数:dbq 设置值:实际路径文件名称
☆、例句:
“driver={microsoft text driver (*.txt; *.csv)};dbq=c:\somepath\;extensions=asc,csv,tab,txt;persist security info=false; ”
⑹、visual foxpro dsnless 连接:
☆、参数:driver 设置值:{microsoft visual foxpro driver}
☆、参数:sourcetype 设置值:dbc
☆、参数:sourcedb 设置值:实际路径文件名称
☆、例句:
“driver={microsoft visual foxpro driver};sourcetype=dbc;sourcedb=c:\somepath\dbname.dbc;exclusive=no;”
⑺、mysql dsnless 连接:
☆、参数:driver 设置值:{mysql}
☆、参数:database 设置值:数据表名称
☆、参数:uid 设置值:用户名称
☆、参数:pwd 设置值:密码
☆、例句:
“driver={mysql}; database=yourdatabase;uid=username;pwd=password;option=16386”