數(shù)據(jù)庫(kù)編程接口及其VC應(yīng)用程序設(shè)計(jì)_第1頁(yè)
數(shù)據(jù)庫(kù)編程接口及其VC應(yīng)用程序設(shè)計(jì)_第2頁(yè)
數(shù)據(jù)庫(kù)編程接口及其VC應(yīng)用程序設(shè)計(jì)_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)庫(kù)編程接口及其VC+ 應(yīng)用程序設(shè)計(jì)摘要:目前有諸如 ODBC 、 DAO 等數(shù)據(jù)庫(kù)編程接口,他們能提供簡(jiǎn)便好用、快速可擴(kuò)展的開(kāi)發(fā)技術(shù),本文將淺析 ODBC 數(shù)據(jù)庫(kù)編程接口的結(jié)構(gòu)體系及其工作原理,并介紹如何運(yùn)用它的類(lèi)在VC+ 開(kāi)發(fā)環(huán)境中設(shè)計(jì)應(yīng)用程序。關(guān)鍵詞:數(shù)據(jù)庫(kù)接口中圖分類(lèi)號(hào): TP311.11ODBC VC+ 應(yīng)用程序文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào):1007-9416( 2014) 04-0182-011 前言社會(huì)正趨于現(xiàn)代化、信息化,諸如C、JAVA 等計(jì)算機(jī)編程語(yǔ)言繁多,在程序開(kāi)發(fā)中可能會(huì)運(yùn)用到多種語(yǔ)言,而運(yùn)用多語(yǔ)言開(kāi)發(fā)軟件,會(huì)面臨程序連接和數(shù)據(jù)交換等難題。雖然開(kāi)發(fā)與數(shù)據(jù)庫(kù)相關(guān)的程序,能

2、利用編程語(yǔ)言把數(shù)據(jù)庫(kù)文件轉(zhuǎn)錄成文本文件,繼而與編程語(yǔ)言進(jìn)行數(shù)據(jù)交換以實(shí)現(xiàn)程序與數(shù)據(jù)庫(kù)間的數(shù)據(jù)交換,但它會(huì)給軟件開(kāi)發(fā)者帶來(lái)不便。對(duì)此,諸如 ODBC 、DAO 等數(shù)據(jù)庫(kù)編程接口孕育而生,它能為數(shù)據(jù)資源提供接口以準(zhǔn)許用戶(hù)的程序?qū)崿F(xiàn)多數(shù)據(jù)庫(kù)連接,ODBC 能實(shí)現(xiàn)最基本的ASCII 文本到繁雜的主框架數(shù)據(jù)庫(kù)等進(jìn)行數(shù)據(jù)連接, 利用 SQL 查詢(xún)語(yǔ)句, 訪問(wèn)其所能支持的所有數(shù)據(jù)資源,輕松實(shí)現(xiàn)數(shù)據(jù)庫(kù)與應(yīng)用程序間的數(shù)據(jù)交換。VC+ 作為適用的開(kāi)發(fā)工具,能提供齊全的類(lèi)庫(kù)和友好的交互界面,能滿足不同編程人員所需,能使用ODBC API或利用MFC中的ODBC類(lèi)實(shí)現(xiàn)數(shù)據(jù)庫(kù)編程。但在用ODBCAPI進(jìn)行編程,過(guò)程中產(chǎn)

3、生大量的代碼,若使用VC+類(lèi)中封裝好的 ODBC API ,能更簡(jiǎn)便地進(jìn)行應(yīng)用編程。本文將淺析 ODBC 數(shù)據(jù)庫(kù)接口及其 VC+6.0 應(yīng)用程序的設(shè)計(jì)。2 ODBCODBC (開(kāi)放數(shù)據(jù)庫(kù)互連)是微軟公司提出的數(shù)據(jù)庫(kù)訪問(wèn)應(yīng)用程序接口標(biāo)準(zhǔn),其定義了訪問(wèn)數(shù)據(jù)庫(kù)API 的規(guī)范,因此關(guān)系數(shù)據(jù)庫(kù)均提供了ODBC 驅(qū)動(dòng)程序。 ODBC 是基于動(dòng)態(tài)鏈接庫(kù)( DLL )的獨(dú)特結(jié)構(gòu),它能讓程序模塊化。運(yùn)用ODBC32.DLL 定義程序接口,在運(yùn)行程序時(shí) ODBC32.DLL 在由 WINDOWS 控制面板中 ODBC 管理模塊維護(hù)的ODBC32.INI 注冊(cè)表基礎(chǔ)上,明確并跟蹤相關(guān)可用的數(shù)據(jù)庫(kù)DLL ,這也就使得

4、單個(gè)應(yīng)用程序?qū)崿F(xiàn)多DBMS 的數(shù)據(jù)訪問(wèn)?;?C/S 結(jié)構(gòu) ODBC 結(jié)構(gòu)是由應(yīng)用程序(Application )、驅(qū)動(dòng)程序管理器(Driver Manager )、驅(qū)動(dòng)程序( Driver )以及數(shù)據(jù)源( Data Source)組成。2.1 應(yīng)用程序應(yīng)用程序能實(shí)現(xiàn)用戶(hù)和接口間進(jìn)行交互,并調(diào)用ODBC函數(shù)給出 SQL 請(qǐng)求以提取結(jié)果作出錯(cuò)誤處理,它藉ODBC界面執(zhí)行以下工作:請(qǐng)求與數(shù)據(jù)源進(jìn)行連接或交互;將SQL 請(qǐng)求發(fā)送到數(shù)據(jù)源; 定義存儲(chǔ)區(qū)域和數(shù)據(jù)格式為SQL請(qǐng)求的結(jié)果; 請(qǐng)求并處理錯(cuò)誤;必要時(shí), 進(jìn)行結(jié)果報(bào)告;為交互控制提交請(qǐng)求或回滾操作;結(jié)束與數(shù)據(jù)源的連接。2.2 驅(qū)動(dòng)程序管理器驅(qū)動(dòng)程

5、序管理器能通過(guò)調(diào)用函數(shù)并使用DLL ,實(shí)現(xiàn)應(yīng)用程序所需驅(qū)動(dòng)的加載和調(diào)用,使其連接到數(shù)據(jù)源,它能管理多個(gè)應(yīng)用和驅(qū)動(dòng)程序。它處于“驅(qū)動(dòng)程序其主要工作:使用.DLL ”文件中,它除了裝載ODBC INI文件將數(shù)據(jù)源映射到特定的 Driver DLL ;服務(wù)初始化并調(diào)用 ODBC ;提供 ODBC 函數(shù)入口指針給每個(gè)驅(qū)動(dòng)程序; 為 ODBC 調(diào)用提供參數(shù)和序列驗(yàn)證。2.3 驅(qū)動(dòng)程序驅(qū)動(dòng)程序也處在.DLL 文件中,它執(zhí)行ODBC 的函數(shù)調(diào)用,將SQL請(qǐng)求相應(yīng)的數(shù)據(jù)源結(jié)果傳遞給應(yīng)用程序。其工作如下:建立與數(shù)據(jù)源的連接;提交SQL請(qǐng)求給數(shù)據(jù)源;翻譯請(qǐng)求的數(shù)據(jù)格式;將結(jié)果傳遞給應(yīng)用程序;將錯(cuò)誤格式轉(zhuǎn)換為錯(cuò)誤代

6、碼并返給應(yīng)用程序;必要時(shí),申明和操縱游標(biāo);若數(shù)據(jù)源需要ODBC 初始化,則初始化 ODBC 。2.4 數(shù)據(jù)源數(shù)據(jù)集及其關(guān)聯(lián)環(huán)境構(gòu)成數(shù)據(jù)源,它包括了操作系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)( DBMS )以及網(wǎng)絡(luò)。應(yīng)用程序無(wú)須制定特定的數(shù)據(jù)庫(kù)系統(tǒng),只要利用標(biāo)準(zhǔn)API 就能連接數(shù)據(jù)源。3 MFC 的 ODBC 類(lèi)MFC ODBC 類(lèi)具有功能齊全、 簡(jiǎn)便易懂等特點(diǎn), 在實(shí)際開(kāi)發(fā)中應(yīng)用范圍最廣。 在 MFC 1.5 以后的版本中, 相關(guān) ODBC 功能的類(lèi)都封裝在 MFC ODBC 類(lèi)中,通過(guò)它們與 ODBC 接口,能使用戶(hù)避免 ODBC API 的繁瑣處理,直接進(jìn)行數(shù)據(jù)庫(kù)的相關(guān)操作。 MFC ODBC 類(lèi)包括有 CDa

7、tabase、CRecordset、CRecordView 以及 CFieldExchange 等類(lèi)。4 VC+ 應(yīng)用程序設(shè)計(jì)4.1 程序結(jié)構(gòu)本文將設(shè)計(jì)員工工資管理系統(tǒng),運(yùn)用 VF 6.0 數(shù)據(jù)庫(kù)接口以及 VC+ 實(shí)現(xiàn)數(shù)據(jù)的增刪改以及計(jì)算等功能,計(jì)算是將基本工資與獎(jiǎng)金的數(shù)據(jù)相加。VF 數(shù)據(jù)庫(kù)名 lyl 包括有 staff 表,其中包含有員工號(hào)(staff_id );員工名( staff_name);工資( basewage);獎(jiǎng)金 (bonus);總計(jì)( totals)。4.2 程序源碼限于篇幅,如下是增添員工部分代碼:void CStffcountView : OnAdd () /添加記錄i

8、f (m_pSet->CanAppend () /確定是否添加記錄m_pSet->AddNew ();UpdateData( true);if ( m_pSet->CanUpdata()m_pSet->Update(); /將新記錄錄入數(shù)據(jù)庫(kù)if (! m_pSet->IsEOF ()m_pSet->MoveLast ();m_pSet->Requery(); /重建數(shù)據(jù)集UpdateDate( false) 5 結(jié)語(yǔ)通過(guò)數(shù)據(jù)庫(kù)編程接口能有效地避免應(yīng)用程序與數(shù)據(jù)庫(kù)間進(jìn)行數(shù)據(jù)交換的大量編碼,在滿足程序需求的情況下,能讓用戶(hù)得到更好地效率及應(yīng)用。綜上所述,在VC+ 設(shè)計(jì)應(yīng)用程序時(shí),運(yùn)用數(shù)據(jù)庫(kù)接口進(jìn)行編程是可行的,它能使編程變得更為簡(jiǎn)便。參考文獻(xiàn)1 廖遠(yuǎn)來(lái) .數(shù)據(jù)庫(kù)編程接口及其VC+ 應(yīng)用程序設(shè)計(jì) J.電腦與電信, 2007, 05: 63-65+68.2 李健平, 戴子文, 王雪力, 劉芳 .基于 ODBC 的 VisualC+ 應(yīng)用程序設(shè)計(jì) J.甘肅科技縱橫,2011,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論