數(shù)據(jù)庫鏈接方式(一)
2024-07-21 02:06:13
供稿:網(wǎng)友
 
數(shù)據(jù)庫鏈接方式(一)
( odbc篇)
1、        產生:
數(shù)據(jù)庫
早期的數(shù)據(jù)庫連接是非常困難的. 因為各種數(shù)據(jù)庫的格式都不一樣,開發(fā)者得對他們所開發(fā)的每種數(shù)據(jù)庫的底層api必須有深刻的了解. 因此,能處理各種各樣數(shù)據(jù)庫的通用的api就應運而生了-―odbc(open database connectivity), odbc是人們在創(chuàng)建通用api的早期產物。在程序中可以使用相同的代碼訪問不同的數(shù)據(jù)產品,因此有許多種數(shù)據(jù)庫(如:access, ms-sql server, oracle, informix等.)遵從了這種標準,被稱為odbc兼容的數(shù)據(jù)庫. odbc的具體作用如圖所示:
 
一般,odbc是由一套擴展的dll(dynamic link library動態(tài)鏈接庫)組成,dll提供了標準的數(shù)據(jù)庫應用程序設計接口。而odbc是建立在標準化的sql(structuredquerylanguage,結構化查詢語言)之上。所以通過odbc和sql,就可以編寫獨立于任何數(shù)據(jù)庫產品的數(shù)據(jù)訪問程序。
2、用odbc連接數(shù)據(jù)庫: 
odbc中提供三種dsn,它們的區(qū)別很簡單:用戶dsn只能用于本用戶。系統(tǒng)dsn和文件dsn的區(qū)別只在于連接信息的存放位置不同:系統(tǒng)dsn存放在odbc儲存區(qū)里,而文件dsn則放在一個文本文件中。 
在asp中使用它們時,寫法如下: 
a.鏈接sql server: 
用系統(tǒng)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: 
用系統(tǒng)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含有大量的低級的調用,因此開發(fā)odbc應用程序還比較困難. 開發(fā)者不得不將大量的精力花在底層的數(shù)據(jù)庫通信中,而不能專注于他們所要處理的數(shù)據(jù).