99精品在线免费_久久99精品久久久久久久青青日本_精品亚洲成人_欧美国产一区二区在线观看_亚洲自拍电影_久久久久久久久久97

歡迎來到 職場詞典網 , 一個優秀的職場知識學習網站!

加入收藏

您所在的位置:首頁 > 應屆生 > 畢業論文

畢業論文

應用vc進行數據庫編程與分析

分類: 畢業論文 職場詞典 編輯 : 職場知識 發布 : 04-06

閱讀 :374

  一、VC作為數據庫編程工具必要性

  實際上從方便的角度講,VisuaIBa血和Delphi這樣的RAD環境更加適合于數據庫開發,應用這些軟件可以在使程序設計非常地容易。對大多數數據庫應用來說,選擇VC++也許并不適宜。但是需要考慮到,單純的數據庫管理必須要和其它的功能結合才能發揮更大的作用,而數據庫軟件并不輕易地支持這些拓展的功能。由于VC對底層強大的支持,其高效的率的代碼結構,編寫的數據庫相關應用程序就會有規模小、提供底層訪問并能提供實時訪問的特點。比如編寫數據庫實用程序及驅動程序時,在硬盤較小或內存有限制時,Visualc++提供了無價無限的工具。

  二、VC數據庫編程方法分析

  (一)ODBC的模式

  Mα'Os'Ofi最初是以開放數據庫互連(ODBC)為目標的,ODBC是Micr'Os'Oft引進的一種早期數據庫接口技術,是ADO的前身。

  VisualC++的MFC類庫定義了幾個數據庫類。在利用ODBC編程時,經常要使用到CDatabase(數據庫類),CRec'OrdSet(記錄集類)和CRe∞'rdView(可視記錄集類)。其中:CDatabase類對象提供了對數據源的連接,通過它你可以對數據源進行操作。CRecordView類對象能以控制的形式顯示數據庫記錄。這個視圖是直接連到一個CRec'OrdSet對象的表視圖。CRec'OrdSet類對象提供了從數據源中提取出的記錄集。

  1數據鏈接

  在CRecordSet類中定義了一個成員變量m_pDatabase:CDatabase*m_pDatabase;

  它是指向對象數據庫類的指針。如果在CRec'OrdSet類對象調用OpenO函數之前,將一個已經打開的CDatabase類對象指針傳給m-pDatabase,就能共享相同的CDatabase類對象。

  2.查詢記錄

  查詢記錄使用CRec'OrdSet::OpenO和CRec'OrdSet::R叫ueryO成員函數。在使用CRecordSet類對象之前,必須使用CRec'OrdSet::OpenO函數來獲得有效的記錄集。一旦已經使用過CReoordSet::OpenO函數,再次查詢時就可以應用CRecordSet::RequeryO函數。在調用αecordSet::句enO函數時,如果已經將一個已經打開的CDatabase對象指針傳給CRec'OrdSet類對象的m_pDatabase成員變量,則使用該數據庫對象建立ODBC連接;否則如果m_pDatabase為壁指針,就新建一個CDatabase類對象并使其與缺省的數據源相連,然后進行αec'OrdSet類對象的初始化。缺省數據源由GetDefaultC'OnnectO函數獲得。

  如果沒有指定參數,程序則使用缺省的SQL語句,即對在GetDefaultSQL()函數中指定的SQL語句進行操作。(二)ADO的模式

  ADO既能應用到VC的強大功能,而且使用起來又比較方便,本文以ADO方式數據庫訪問為例,展示VC下如何進行數據庫應用。下面是使用其編程的方法。

  1.使用預處理指令#import

  #import"C:飛ProgramFiles/C'Omm'OnFiles飛System'山DO恤sad'015.

  dll"/n'O_namespaceren缸丑叭"EOF","EndOfFile")

  程序在編譯過程中,VC++會讀出msadol5.dll中的類型庫信息,自動產生兩個該類型庫的頭文件和實現文件msad'015.tlh和msad'015.tli(在您的Debug或Release目錄下〉。在這兩個文件里定義了ADO的所有對象和方法,以及一些枚舉型的常量等。我們的程序只要直接調用這些方法就行了,與使用MFC中的COleDispatchDriver類調用Aut'Omati'On對象十分類似。

  2.使用MFC中的CIDispatchDriver就是通過讀取msad'015.dll中的類型庫信息,建立一個COleDispatchDriver類的派生類,然后通過它調用ADO對象。

  3直接用COM提供的API如使用如下代碼zCLSIDclsid;

  HRESULThr=::CLSIDFromProgID(L"ADODB.C'Onnecti'On",&clsid);

  if(FAlLED(hr?{...J

  :CoCr四teIn民ance(clsid,NULL,CLSCTX_SERVER

  IID_IDispatch,(v'Oid叫&pDispatch);

  if(FAlLED(hr

  {...J

  以上三種方法,第一和第二種類似,可能第一種好用一些,第三種編程可能最麻煩。但可能第三種方法也是效率最高的,程序的尺寸也最小,并且對ADO的控制能力也最強。當需要繞過ADO而直接調用OLEDB底層的方法時,就一定要使用第三種方法。ADO編程的關鍵,就是熟練地運用ADO提供的各種對象('0ect)、方法(method)、屬性(prop町ty)和容器(00llecti'On)。

下一篇:寢室環境對高職大學生心理健康的影響 下一篇 【方向鍵 ( → )下一篇】

上一篇:中職衛校學生生理學學習興趣的激發 上一篇 【方向鍵 ( ← )上一篇】

主站蜘蛛池模板: 男人的天堂在线视频 | 91久操网| 免费国产精品久久久久久 | h视频在线播放 | 亚洲精品区 | 五月天婷婷狠狠 | 国产精品一区二区免费 | 美女国内精品自产拍在线播放 | 人人干人人干人人 | 一区二区三区四区在线 | 欧美在线亚洲 | 午夜成人在线视频 | 亚洲一区二区久久 | 午夜精品导航 | 免费观看黄a一级视频 | 欧美不卡视频一区发布 | 91精品国产乱码麻豆白嫩 | 99久久久无码国产精品 | 一区二区三区四区不卡 | 日本中文字幕视频 | 国产精品久久久久无码av | 国产精品不卡视频 | 久久国产成人 | 久久久www成人免费无遮挡大片 | 日韩在线一区二区三区 | 欧美综合一区二区 | 国产精品亚洲第一区在线暖暖韩国 | 日韩www| 国产亚洲日本精品 | 99re99 | 一区二区三区不卡视频 | 亚洲精品99 | 成人视屏在线观看 | 最近中文字幕在线视频1 | 草草视频在线观看 | 亚洲精品久久久久久久久久久久久 | 欧美一级网站 | 成人在线观看免费观看 | 妞干网av| 日韩美女在线看免费观看 | 中文字幕av亚洲精品一部二部 |