- 相關(guān)推薦
visual c 中的開放數(shù)據(jù)庫連接技術(shù)
摘 要 odbc(open database connectivity,開放數(shù)據(jù)庫連接)提供了一組應(yīng)用程序調(diào)用接口和一套運行支持環(huán)境,應(yīng)用程序可以使用標(biāo)準(zhǔn)的函數(shù)進行數(shù)據(jù)庫操縱,而不必關(guān)心數(shù)據(jù)源來自于何種數(shù)據(jù)庫治理系統(tǒng)(dbms),只要有相應(yīng)的驅(qū)動程序即可。本文先容了odbc的運行機制,著重討論了visual c 1.5下應(yīng)用mfc進行odbc編程的方法。一、開放數(shù)據(jù)庫連接
odbc(open database connectivity,開放數(shù)據(jù)庫連接)是微軟開放服務(wù)結(jié)構(gòu)中有關(guān)數(shù)據(jù)庫的一個組成部分。它建立了一組規(guī)范,并提供了一組應(yīng)用程序調(diào)用接口。用這樣一組接口建立的應(yīng)用程序,對數(shù)據(jù)庫的操縱不依靠于任何數(shù)據(jù)庫治理系統(tǒng),不直接與任何dbms打交道,由此可實現(xiàn)應(yīng)用程序?qū)Σ煌琩bms的共享。數(shù)據(jù)庫操縱的“數(shù)據(jù)源”對應(yīng)用程序是透明的,所有的數(shù)據(jù)庫操縱由對應(yīng)dbms的odbc驅(qū)動程序(odbc driver)完成。有了odbc驅(qū)動程序,數(shù)據(jù)源就變得十分廣泛,它可以是本機的某種數(shù)據(jù)庫格式的文件(如本機dos目錄下的access文
件*.mdb),也可以是遠(yuǎn)程數(shù)據(jù)庫文件(如microsoft sql server);它可以是目前已知的某種dbms格式,也可以是一種全新的數(shù)據(jù)庫格式?傊,它取決于提供了什么數(shù)據(jù)庫類型的驅(qū)動程序。
visual c 中的odbc主要是實現(xiàn)基于windows的關(guān)系數(shù)據(jù)庫的應(yīng)用的共享。
二、odbc治理器
在odbc中,數(shù)據(jù)源是一個重要的概念,它是數(shù)據(jù)庫位置和數(shù)據(jù)庫類型等連接信息的總和。數(shù)據(jù)源在使用前必須通過odbc治理器(administrator)進行登錄。在登錄數(shù)據(jù)源時,要搞清數(shù)據(jù)源名(datasource name)、數(shù)據(jù)庫文件名(database name)和數(shù)據(jù)表格名(table name)這三者的概念和相互關(guān)系:數(shù)據(jù)源實際是一種數(shù)據(jù)連接的抽象,數(shù)據(jù)源名是登錄時賦予的“連接”的名稱,以供給用程序使用,至于該數(shù)據(jù)源下連接的是哪一個數(shù)據(jù)庫,則由數(shù)據(jù)庫文件名指出(如access 2.0 for ms offics中的.mdb文件);一個數(shù)據(jù)庫文件中可以包括若干個數(shù)據(jù)表格(table)和其他內(nèi)容。在關(guān)系@@09a05900.gif;圖1 odbc層次關(guān)系圖數(shù)據(jù)庫中,數(shù)據(jù)是以二維表格的方式存在于數(shù)據(jù)庫@@文件中,應(yīng)用程序終極的操縱目標(biāo)即是這些表格中的行(row記錄)和列(columns字段)數(shù)據(jù)。對于foxprow數(shù)據(jù)源,數(shù)據(jù)庫文件名是“路徑名”,而該路徑下的所有數(shù)據(jù)文件(*.dbf)都屬于該“數(shù)據(jù)庫文件”名下的數(shù)據(jù)表格(table)。
odbc治理器被裝在control panel里(odbcinst.cpl)。通過該工具可以增添、修改或刪除數(shù)據(jù)源,也用來增添、刪除odbc驅(qū)動程序,odbc治理器把數(shù)據(jù)源和它們的連接信息保存在odbc.ini、odbcinst.ini和odbcisam.ini中。當(dāng)需要共享應(yīng)用程序時,只需按新的數(shù)據(jù)文件的類型和位置重新登錄即可。
三、odbc應(yīng)用程序接口
odbc api是一組標(biāo)準(zhǔn)的odbc函數(shù)庫,除了一般的數(shù)據(jù)庫操縱函數(shù)外,還包括一組函數(shù)(如sqlexec或sqlexecdirect)能夠內(nèi)嵌標(biāo)準(zhǔn)sql查詢語句。sql(structured query language結(jié)構(gòu)化查詢語言)是一種存取關(guān)系型數(shù)據(jù)庫的標(biāo)準(zhǔn)語言,能夠定義、查詢、修改和控制數(shù)據(jù),簡單的語句能夠作用于整個數(shù)據(jù)表格,具有很強的功能。
同windows 3.1 sdk中api類似,odbc api也是基于句柄(handle)進行操縱的。api函數(shù)按功能可分為以下幾類:
【visual c 中的開放數(shù)據(jù)庫連接技術(shù)】相關(guān)文章:
Visual C#的Excel編程03-19
Visual Basic6.0下數(shù)據(jù)庫報表制作技巧12-06
Visual01-07
數(shù)據(jù)庫管理系統(tǒng)中的模糊查詢技術(shù)03-03
淺析數(shù)據(jù)庫管理系統(tǒng)中模糊查詢技術(shù)的正確使用03-04
GIS訪問網(wǎng)絡(luò)數(shù)據(jù)庫中若干技術(shù)問題的探討03-18
.NET技術(shù)的數(shù)據(jù)庫技術(shù)與應(yīng)用研究11-14
開發(fā)基于SQL SERVER 的C/S數(shù)據(jù)庫應(yīng)用系統(tǒng)?03-18
淺析數(shù)據(jù)庫技術(shù)在海河流域水資源綜合規(guī)劃中的應(yīng)用03-16
應(yīng)用Oracle數(shù)據(jù)庫監(jiān)控維護技術(shù),維護數(shù)據(jù)庫安全03-03