VC 資料庫技術系列 一 資料庫基礎知識

2021-05-22 15:44:59 字數 3543 閱讀 8970

我們知道程式界有乙個著名公式是:程式=資料+演算法。這充分說明了資料在程式設計中的重要地位。而當資料規模達到一定程度的時候,為了達到資料的快速儲存和快速訪問,就必須使用資料庫(database)來進行資料的儲存。因為資料庫是按照資料結構來組織、儲存和管理資料的倉庫,利用資料庫進行儲存具有儲存訪問快速、管理方便、合理組織、減少資料的冗餘度等優勢。

資料庫有很多種型別,從最簡單的儲存有各種資料的**到能夠進行海量資料儲存的大型資料庫系統都在各個方面得到了廣泛的應用。資料庫模型有層次結構模型、網狀結構模型、關係結構模型,本篇章主要介紹應用範圍最廣泛的關係型資料庫的訪問技術。

visual c++資料庫開發的特點

一、             

豐富的資料庫訪問技術可供選擇

visual c++6.0

提供了多種多樣的資料庫訪問技術

—odbc api

、mfc odbc

、dao

、ole db

、ado

等。這些技術各有特點,使用者可按自己的技術熟練程度及專案特點擊擇適合自己的開發技術。

二、             

vc提供的視覺化嚮導功能簡化開發過程

利用vc

提供的和

classwizard

,使用者可以方便地開發出效能優良的基於

mfc的資料庫應用程式。你甚至不需要編寫一句**,直接通過滑鼠點選就能生成乙個完整的簡單資料庫應用程式。

三、             

強大的ide

編譯器大大提高了開發的效率。

vc的ide是目前世界上功能最強大的編譯器之一。利用該

ide所提供的各種輔助工具可方便快速的進行程式編寫、編譯、鏈結、除錯程式,相比一般的編譯器在效率上有明顯提高。

四、             

開發方式靈活,開發難度適中

visual c++

進行資料庫開發,可選擇的開發方式多種多樣。既可進行面向過程的開發,也可按物件導向的方式進行開發。既可直接呼叫彙編的**,也可以通過

dll動態庫的方式與其它程式語言進行混合程式設計。豐富的類庫及

com庫為開發提供了強大的支援。

五、             

良好的架構使其具有較好的可擴充套件性

visual c++

具有物件導向程式設計的特性。通過抽象性、繼承、過載、多型等特性,面向介面程式設計,可使整個資料庫系統具有良好的架構,支援良好的擴充套件性。利用面向介面程式設計及

com元件程式設計技術,各個部件可進行無縫替換,極大的提高了程式的可擴充套件性及健壯性。

六、             

程式執行效率高,執行速度快

我們知道,

c++語言在高階語言裡是屬於與機器語言比較接近的語言,所以它的執行效率一般來說僅次於組合語言。而且在執行效率要求比較高的地方,可以直接內嵌彙編,這大大提高了程式的執行效率。而且

visual c++

更通過**優化技術,可讓程式的執行效率提高百分之十幾。這是其它高階語言所無法比擬的。

visual c++資料庫開發技術

如前所述,visual c++為資料庫開發提供了多種多樣的技術支援。使用者可供選擇的資料庫訪問技術包括odbc(open database connectivity)、mfc odbc(microsoft foundation classes odbc)、dao (data access object)、ole db(object link and embedding database)、ado(activex data object)。這些技術都有各自的特點,適用範圍也不盡相同,所以使用者一般需要根據技術的特點和專案的特徵進行恰當的選擇。

1odbc

優點:odbc是客戶應用程式訪問關聯式資料庫時提供的乙個統一的介面,odbc提供了一套統一的api應對不同的資料庫訪問,這樣使應用程式可以只針對odbc的api來進行程式編寫,就可訪問任何提供了odbc驅動程式的資料庫。此外,odbc還是一種業界標準,幾乎所有的關聯式資料庫都提供了相應的odbc驅動程式,所以具有廣泛的應用。

缺點:不過由於odbc只能用於關係型資料庫,使得odbc很難訪問物件資料庫及其它非關係型資料庫。而且由於odbc是乙個介面層,需要為各種不同的資料庫提供適應性,必然會使效率有所降低。此外,在使用odbc時需要向系統註冊乙個資料來源,這增加一定的配置難度。還需要通過大量的odbc統一介面api來對資料庫訪問,也提高了一定的開發難度。

2mfc odbc

優缺點:因為mfc odbc只是通過mfc類庫mfc odbc對odbc的api進行了一層簡單封裝,使api更容易被使用,所以它的優缺點就跟odbc一樣,只是降低了一定的開發難度。

3dao

優點:dao(資料訪問物件)是一種應用程式程式設計介面(api),它是微軟提供的用於訪問microsoft jet資料庫檔案(*.mdb)的強有力的資料庫開發工具。dao是微軟的第乙個物件導向的資料庫介面,各個dao物件協同工作。通過jet函式,它還可以訪問其他的結構化查詢語言(sql)資料庫。因為dao直接內嵌在access執行環境中,dao是訪問mdb檔案有最高效率的資料庫引擎。mfc也提供了一組dao類,封裝了底層的api,而且vc嚮導也提供了對dao的支援,從而大大簡化了程式的開發。此外不必在odbc管理器中註冊dsn。

缺點:dao是基於microsoft jet引擎的,只能訪問jet引擎支援的桌面資料庫。所以要訪問sql server必須通過odbc來進行訪問。

4ole db

優點:ole db是visual c++開發資料庫應用中提供的新技術。ole db對所有的檔案系統包括關聯式資料庫和非關聯式資料庫都提供了統一的介面。所以使用ole db可以對大部分資料庫進行廣泛的支援。同時它是低階應用程式介面,所以在效率上比odbc高。

缺點:直接使用ole db來設計資料庫應用程式需要大量的**。即便可以通過atl模板來減少一定的工作量,其開發難度也是相對較大的。可以說,他是所有資料庫程式設計介面中難度最大的。

5ado

優點:ado是一種物件導向的程式設計介面,它向我們提供了乙個熟悉的,高層的對ole db的automation封裝介面。它繼承了ole db技術的優點,具有易於使用、訪問效率高、功能強大的特點。因為是物件導向的,內部通過各個物件相互作用實現。既可訪問關係型資料庫,也可訪問非關係型資料庫。

缺點:唯一缺點應該是基於com技術,所以不能跨平台使用,只能用在支援com介面的機器上,也就是微軟的視窗系統了。對於使用vc++來進行開發的話,也不能算是乙個缺點了。

vc++資料庫技術系列(二)

MySQL資料庫(一) 資料庫基礎

資料庫介紹 db database 資料庫 dbms database management system 資料庫管理系統 dba 資料庫管理員 database administrator 資料 描述事物的符號記錄稱為記錄 數字 文字 影象 聲音 表 不同的組織記錄在一起形成表 資料庫 資料的集合...

一 資料庫基礎

1.1使用資料庫的必要性 使用資料可以高效且條理分明地儲存資料,它使人們能夠更加迅速和方便地管理資料,主要體現在以下幾個方面.1 可以結構化的儲存大量的資料資訊,方便使用者進行有效的檢索和訪問。2 可以有效的保持資料資訊的一致性 完整性降低資料冗餘。3 可以滿足應用的共享和安全方面的要求。4 資料庫...

mysql 一 資料庫基礎

1.什麼是資料庫?資料庫 database,儲存資料的倉庫,高效的儲存和處理資料的介質 介質主要是兩種 磁碟和記憶體 2.資料庫分類?資料庫基於儲存介質的不同 分為兩類 關係型資料庫 sql 和非關係型資料庫 nosql not only sql,不是關係型的資料庫都叫非關係型資料庫 3.不同的資料...