日期:2013-12-28  浏览次数:20485 次


数据库链接方式(一)

( odbc篇)

1、        产生:


数据库
晚期的数据库连接是非常困难的. 由于各种数据库的格式都不一样,开发者得对他们所开发的每种数据库的底层API必须有深刻的了解. 因此,能处理各种各样数据库的通用的API就应运而生了-―ODBC(Open Database Connectivity), ODBC是人们在创建通用API的晚期产物。在程序中可以使用相反的代码访问不同的数据产品,因此有许多种数据库(如:Access, MS-SQL Server, Oracle, Informix等.)服从了这种标准,被称为ODBC兼容的数据库. ODBC的具体作用如图所示:






 




普通,odbc是由一套扩展的dll(dynamic link library动态链接库)组成,dll提供了标准的数据库使用程序设计接口。而odbc是建立在标准化的sql(structuredQueryLanguage,结构化查询言语)之上。所以通过odbc和sql,就可以编写独立于任何数据库产品的数据访问程序。

2、用odbc连接数据库:

odbc中提供三种dsn,它们的区别很简单:用户dsn只能用于本用户。系统dsn和文件dsn的区别只在于连接信息的存放位置不同:系统dsn存放在odbc储存区里,而文件dsn则放在一个文本文件中。

在asp中使用它们时,写法如下:

A.链接sql server:

用系统dsn:

connstr="DSN=dsnname;UID=xx;PWD=xxx;DATABASE=dbname"

用文件dsn:

connstr="FILEDSN=xx;UID=xx;PWD=xxx;DATABASE=dbname"

还可以用连接字符串(从而不用再建立dsn):

connstr="DRIVER={SQL SERVER};SERVER=servername;UID=xx;PWD=xxx"

B.链接access:

用系统dsn:

connstr="DSN=dsnname"

(或者为:connstr="DSN=dsnname;UID=xx;PWD=xxx")

用文件dsn:

connstr="FILEDSN=xx"

还可以用连接字符串(从而不用再建立dsn):

connstr="DRIVER={Microsoft Access Driver};DBQ=d:\abc\abc.mdb"

3、缺陷:

ODBC含有大量的低级的调用,因此开发ODBC使用程序还比较困难. 开发者不得不将大量的精力花在底层的数据库通信中,而不能专注于他们所要处理的数据.