freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vc操作數(shù)據(jù)庫簡介(已修改)

2025-09-15 16:48 本頁面
 

【正文】 數(shù)據(jù)庫簡介 數(shù)據(jù)庫技術(shù)是現(xiàn)在最流行的一項計算機技術(shù),但是它不是僅僅由計算機構(gòu)成。自 60年代以來,它就一直活躍在數(shù)據(jù)處理的領(lǐng)域,至今經(jīng)有了很大的發(fā)展,已經(jīng)成為計算機技術(shù)的一個重要分支。回顧一下前人的數(shù)據(jù)管理,如最簡單的帳目管理,需要記在本子上,效率低,安全性能差。而現(xiàn)在只要有了數(shù)據(jù)支持,我們就可以非常方便的建立起自己的數(shù)據(jù)庫,并進行管理和操作。數(shù)據(jù)處理是個熱門話題,現(xiàn)行的數(shù)據(jù)處理方法有很多,可是限于篇幅,我們不能一一介紹。在看此章書之前,希望讀者能夠看一本關(guān)于數(shù)據(jù)庫系統(tǒng)的教程,并且能夠?qū)W習(xí)一下 MICROSOFT 的數(shù)據(jù)庫軟件 SQL 。當然不必深入研究,只要知道其中的一些概念就可以。 作者所用的編譯環(huán)境是: (企業(yè)版 ), SQL , Windows98(第二版 )。這章只是講用 VC++來開放數(shù)據(jù)庫前臺開發(fā)工具,所以涉及到數(shù)據(jù)庫軟件的效率和構(gòu)造可能不會涉及到,讀者有興趣的可以自己翻閱其它書籍。 現(xiàn)行的數(shù)據(jù)庫模型主要有四種:層次模型,網(wǎng)狀模型,關(guān)系模型,面向?qū)ο竽P汀,F(xiàn)在最流行的數(shù)據(jù)庫軟件都是關(guān)系模型,最有希望的模型就是面向?qū)ο竽P停?但是目前此技術(shù)還不很成熟。作者所用的 SQL ,這個模型的主要的特點就是用表格數(shù)據(jù)來表示實體和實體聯(lián)系的模型,就如 Word的表格,但是在數(shù)據(jù)庫中并不是簡單的存儲一個表格。一個數(shù)據(jù)庫的組成往往有四個部分組成:硬件,軟件,數(shù)據(jù)和用戶。數(shù)據(jù)庫軟件現(xiàn)在一般指那些數(shù)據(jù)庫管理軟件,就如 SQL ,現(xiàn)在的數(shù)據(jù)庫軟件有很多,都支持關(guān)系模型。如: Oracle, SysBase等。至于數(shù)據(jù)庫軟件的選擇完全看用戶的需求了。 數(shù)據(jù)庫的應(yīng)用 數(shù)據(jù)庫的應(yīng)用是很廣泛的 ,機場,科研單位,學(xué)校,網(wǎng)絡(luò)等等,只要是接觸到數(shù)據(jù)記錄、管理、還有處理的,都要用到數(shù)據(jù)庫?,F(xiàn)在的數(shù)據(jù)庫技術(shù)可以說是計算機技術(shù)的一個重要支柱,沒有數(shù)據(jù)庫的支持,現(xiàn)在的 Inter也無法運行起來。而且對于數(shù)據(jù)庫前端的開發(fā)也是一個熱門項目。怎么作出一個友好的界面,以及效率高的工具,是每個數(shù)據(jù)庫前端開發(fā)程序員的目標。 VC 在這方面做得非常好,有良好的數(shù)據(jù)庫支持。 VC對數(shù)據(jù)庫的支持 VC 從 ,而且提供了多種方法,而我將重點介紹 ODBC的引用。在 VC 中支持的 ODBC驅(qū)動有: SQL Server, Microsoft Access, Microsoft FoxPro, Microsoft Excel, dBASE, Paradox,Microsoft Oracle ODBC, Text files Microsoft對數(shù)據(jù)庫的支持 Microsoft對于數(shù)據(jù)庫的支持是多方面的,例如大家都知道的 SQL SERVER產(chǎn)品?;贜T 的 Windows系統(tǒng)能夠提供強有力的數(shù)據(jù)庫支持, Windows NT 操作系統(tǒng),以及現(xiàn)在剛剛推出的 Windows2020都是良好的數(shù)據(jù)庫軟件運行的操作系統(tǒng)。在 VC中也是一樣,從 ODBC API 到 ODBC的 MFC類,還有 ADO, OLE DB 支持,這都是微軟對于數(shù)據(jù)前臺工具開發(fā)的支持,再加上 VC 的界面處理,可以非常輕松的編出一個數(shù)據(jù)庫前端處理軟件。讀者在下面的學(xué)習(xí)中可以體會到這一點。 ODBC介紹和引用 ODBC的英文全稱是 Open Database Connectivity interface,翻譯過來就是開放數(shù)據(jù)源接口。 ODBC接口是一個標準的,統(tǒng)一的接口,程序員可以通過它訪問不同的數(shù)據(jù)源,而不必關(guān)心這個數(shù)據(jù)源是從那個數(shù)據(jù)庫軟件生成的。而且現(xiàn)行的 數(shù)據(jù)庫軟件都有自己的 ODBC 驅(qū)動,接口都是標準的。 在 NT 或是 98/95下面的控制面板里面都一個 ODBC數(shù)據(jù)源 (32位 )(如圖 151) 151 控制面板 ODBC 數(shù)據(jù)源控制臺就是 Windows 系統(tǒng)管理數(shù)據(jù)源的控制臺,所有的數(shù)據(jù)庫驅(qū)動,以及數(shù)據(jù)源登記都要在此發(fā)布,并向系統(tǒng)發(fā)出請求。通過使用 ODBC API 和 MFC ODBC 類 , 你可以訪問任何數(shù)據(jù)資源,無論這個數(shù)據(jù)源是本地的,還是遠處的。只要你的應(yīng)用程序的用戶的終端機器上面有 ODBC的驅(qū)動,無論是 32位的 ODBC驅(qū)動或是 16位的 ODBC驅(qū)動都可以訪問 任何地方的數(shù)據(jù)源,無論數(shù)據(jù)源是在本地還是網(wǎng)上。如果你是使用的是 Microsoft的 Jet (.MDB) 數(shù)據(jù)庫 , 那么用 DAO將可以得到比用 ODBC更高的效率。 ODBC是種接口,它是通過相應(yīng)的各個數(shù)據(jù)庫的 ODBC驅(qū)動來訪問各種數(shù)據(jù)庫中的數(shù)據(jù)。使用 ODBC,你能夠使自己的應(yīng)用程序獨立于數(shù)據(jù)庫的硬件環(huán)境, ODBC 提供的 API函數(shù)獨立于數(shù)據(jù)庫管理系統(tǒng)( DBMS- the source database management system) ODBC 是 Microsoft的 Windows系統(tǒng)下的數(shù)據(jù)庫服務(wù)的一部分。 它是由下面幾個部分構(gòu)成的: ? ODBC API :包含在一個動態(tài)庫中的函數(shù)集合;一個錯誤代碼的集合;一個標準的 SQL語句集合,用來調(diào)用 DBMS中的數(shù)據(jù)。 ? ODBC Driver Manager:一個動態(tài)庫文件 () 來加載 ODBC驅(qū)動,這個 DLL是對你的應(yīng)用程序是透明的。 ? ODBC database drivers:由一個或是多個 DLL構(gòu)成,其中含有 ODBC API,這些DLL由其擁有者: DBMS調(diào)用。 ? ODBC Cursor Library: 這也是一個動態(tài)連接庫文件 (),它是駐留在 ODBC驅(qū)動管理器和翻閱數(shù)據(jù)的句柄之間。 ? ODBC Administrator :這是一個工具,就是 ODBC 控制臺,是在控制面板中,正如圖 151所示。它是用來認證不同的數(shù)據(jù)源。 應(yīng)用程序正是通過 ODBC 驅(qū)動來保證應(yīng)用程序獨立于不同的 DBMS 系統(tǒng)。否則應(yīng)用程序需要直接和 DBMS 系統(tǒng)打交道,這將是很痛苦的事情,當你的程序還要運行于不同的DBMS 下的時候,你還要考慮兼容性。這些 ODBC 驅(qū)動做的事情,簡單的一句話就是將應(yīng)用程序的調(diào)用翻譯為 DBMS系統(tǒng)能夠理解的命令。 有一點是很重要的,這就是: ODBC是用來釋放數(shù)據(jù)庫的能力的,而不是這些數(shù)據(jù)庫的補充。因此,讀者不要希望使用 ODBC 會使一個簡單的數(shù)據(jù)庫馬上變成一個標準的關(guān)系數(shù)據(jù)庫引擎。它只是一個橋梁,將訪問數(shù)據(jù)庫的鴻溝給掩蓋了,使得開發(fā)人員不必需要懂得太多的 DBMS的特征。 MFC 對 ODBC的封裝 MFC 中對于數(shù)據(jù)庫的封裝是完善的,它將數(shù)據(jù)庫的讀,寫和刪除,加入以及生成新的表單都封裝到幾個類中了,用戶可以象用類庫一樣來操作數(shù)據(jù),這樣就隱藏了繁瑣的底層的數(shù)據(jù)操作,這樣就大大減輕了程序員的工作量,并且能夠?qū)⒕Πl(fā)在界面的處理上。從 152 ODBC結(jié)構(gòu) 圖 152我們可以看出 32位的 Application就是我們用 MFC開發(fā)的程序,它是通過 來訪問不同的 32 位數(shù)據(jù)庫驅(qū)動,然后才得到數(shù)據(jù)源。然而使用了 MFC 的數(shù)據(jù)庫類后,我們可以不必關(guān)心底層的運作,因為 MFC 自動將它完成了。一般 Windows 系統(tǒng)給出,驅(qū)動和數(shù)據(jù)源由相應(yīng)的數(shù)據(jù)庫給出。 如何訪問數(shù)據(jù)庫 在運行訪問數(shù)據(jù)庫的前臺軟件之前,要在控制面板上的 ODBC數(shù)據(jù)源控制臺中登記一下。作者使用的是 SQL ,現(xiàn)在請讀者打開控制面板 ,點擊 ODBC數(shù)據(jù)源( 32位),然后按下面的步驟去作: 建立 ODBC數(shù)據(jù)源 打開 ODBC控制臺,然后選擇系統(tǒng) DSN,就如圖 153一樣。然后選擇 LocalServer,如圖所示,因為我的 SQL 。然后按下按鈕添加,彈出一個如圖 154所示的對話框,在其中選擇驅(qū)動程序為 SQL Server,然后單擊完成按鈕。接著彈出如圖 155的對話框,其中的描述語句是沒有任何限制的,請按圖 155所示選擇好,再單擊下一步按鈕,彈出一個 ODBC SQL Server DSN配置對話框,將其“登陸標識號”改為 sa,密碼為管理員密碼,然后單擊下一步,彈出如圖 156 的對話框,請將默認數(shù)據(jù)庫改為 Pubs數(shù)據(jù)庫,再單擊下一步,在彈出一個對話框后單擊完成按鈕。最后出現(xiàn)如圖 157的對話框,在里面,可以測試數(shù)據(jù)源(按下“測試數(shù)據(jù)源”按鈕),單擊“確認”按鈕確認成功后關(guān)閉對話框。 153 ODBC控制臺 154 創(chuàng)建新的數(shù)據(jù)源 在這之前當然要將 SQL ,并且保證 SQL 夠正確運行。關(guān) 于 SQL 的配置和安裝請讀者參看相應(yīng)的技術(shù)資料,但是在Windows98/95 下安裝 SQL 是較為簡單的,不必花費很多的精力。作者選擇 Pubs數(shù)據(jù)庫作為缺省數(shù)據(jù)庫,是因為 SQL Pubs數(shù)據(jù)庫是一個公共模板數(shù)據(jù)庫,只要裝了 SQL 。這樣讀者就不必將作者的數(shù)據(jù)庫文件再進行一次拷貝, Pubs數(shù)據(jù)庫中的一切數(shù)據(jù)在不同的 SQL 。 155 連接數(shù)據(jù)庫 156 SQL Server 配置 157安裝成功 連接數(shù)據(jù)源 要想訪問數(shù)據(jù)源中的數(shù)據(jù),首先就要一個對數(shù)據(jù)源的連接,因此,程序必須首先建立一個數(shù)據(jù)源的連接。這些連接都封裝到了 CDatabase類中,一旦一個 CDatabase建立了一個對數(shù)據(jù)源的連接,你就可以完成對數(shù)據(jù)的讀取,修改,更新,以及處理。在你連接一個數(shù)據(jù)源后你可以做以下的工作: ? 構(gòu)造 CRecordset派生類的對象,并從相應(yīng)的記錄集中讀出相應(yīng)的選擇記錄,將它們保存在 CRecordset派生類中。 ? 管理事務(wù)。 ? 或是直接執(zhí)行 SQL語句。 要想正確使用 CDatabase 類,必須要在控制面板的 ODBC32 數(shù)據(jù)源控制臺里面正確登記。在同一個應(yīng)用程序中,你可以有多個數(shù)據(jù)源,相應(yīng)的對應(yīng)多個 CDatabase對象,也可以使用多個 CDatabase對象來連接同一個數(shù)據(jù)源。 選擇和處理記錄 在 SQL Server中你可以用 Sql語句,如 SELECT,從數(shù)據(jù)源中選取出一個記錄集,或是一些記錄集的集合。在 MFC中,這些記錄集就封裝在 CRecordset對象中,記住, CRecordset對象一般要派生出一個新的子類,來對應(yīng)相應(yīng)的記錄集,因為在 CRecordset 派 生類中的數(shù)據(jù)就對應(yīng)著相應(yīng)的記錄集中的相應(yīng)的行。使用 ClassWizard或是 AppWizard都會自動的創(chuàng)建到指定的數(shù)據(jù)源的連接,你需要重載 CRecordset類中的 GetDefaultSQL函數(shù)來返回使用的表的名字。 一般 CRecordset對象要完成這樣一些的任務(wù): ? 查看當前的記錄的數(shù)據(jù)域。 ? 對記錄集的數(shù)據(jù)進行處理。 ? 定制缺省的 SQL 語句,以便在缺省的時候,程序知道執(zhí)行什么動作。 ? 在記錄集中移動記錄指針 ? 增加、刪除和更新數(shù)據(jù)源 一旦不需要某個記錄集的相應(yīng)的 CRecordset對象的時候,就要將它釋放掉 ,交回其占用的系統(tǒng)資源。 文檔和視圖 文檔、視圖和數(shù)據(jù)庫有很密切的關(guān)系,它關(guān)系到程序的設(shè)計結(jié)構(gòu)。 MFC 的應(yīng)用程序大多是采用 /視圖文檔的結(jié)構(gòu),典型的結(jié)構(gòu)就是:視圖負責顯示數(shù)據(jù),文檔對象 (有多個 )用來存取不同的數(shù)據(jù),同時視圖還負責和文檔的數(shù)據(jù)交換和更新。但是有時候這樣的結(jié)構(gòu)是多余的,比如當只操作一個數(shù)據(jù)源中的一個記錄集時,數(shù)據(jù)放在視圖類中就行了。 現(xiàn)在來詳細討論一下數(shù)據(jù)庫編程中的文檔視圖的應(yīng)用: 1. 最小化的文檔支持: 在 AppWizard中有兩個選項來支持數(shù)據(jù)庫的訪問,每種選擇都會產(chǎn)生一個 CrecordView類的派生類和一個文檔類。 ( 1) 沒有文件支持的文檔: 如果你不需要文檔的存取功能,就是序列化功能,選擇 AppWizard database 選項“ Database view without file support”(如圖 158所示) ,這種文檔可以方便的存放 CRecordset的派生類。這樣的方式類似于 VC 中提到的視圖文檔結(jié)構(gòu),就是視圖負責顯示,文檔負責存放數(shù)據(jù)。 158 選擇數(shù)據(jù)庫支持 ( 2) 有文件的支持的文檔 如果需要與文檔相關(guān)的功能,比如序列化的功能,要在圖 158中選擇“ Database view with file support”,對于這種方式下的數(shù)據(jù)庫訪問的方法和上面的無文件支持的文檔方式一樣。同時我們又可以使用文檔的序列化的功能,例如用戶的特定信息。同樣的,在序列化的過程中,可以根據(jù)需要自己實現(xiàn)存取功能。 2. AppWizard中關(guān)于文檔視圖的選項 使用 AppWizard建立一個應(yīng)用程序,可以通過一些選項來選擇最佳的文檔視圖支持。下表列出了圖 158的四個選項的文檔和視圖的支持: 選項( Option) 視圖 (View) 文檔( Document) None Cview 類派生 完全的文檔支持。 Header files only Cview 類派生 同上 Database view without file support Crecordset 類派生 不支持序列化,但是用文檔放數(shù)據(jù) Database view with file support Crecordset 類派生 完全的序列化的支持 3. 什么時候可以不要文檔 作者的觀點是最好要文檔,但是有些時候沒有必要。 比如一些應(yīng)用程序中,文檔有著與此處不同的意義,最一般的情況就是應(yīng)用程序用序列化的功能來讀取整個數(shù)據(jù)庫文件;用戶使用這個應(yīng)用程序來修
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1