認(rèn)識資料庫(“資料”文檔)共65張_第1頁
認(rèn)識資料庫(“資料”文檔)共65張_第2頁
認(rèn)識資料庫(“資料”文檔)共65張_第3頁
認(rèn)識資料庫(“資料”文檔)共65張_第4頁
認(rèn)識資料庫(“資料”文檔)共65張_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Adv-VB2005Week12認(rèn)識資料庫建立Access2003資料庫開啟與關(guān)閉資料庫連接使用Command物件執(zhí)行SQL命令使用DataReader物件讀取資料15-1認(rèn)識資料庫資料庫(database)係指依照一定格式存放在一起的資料記錄檔案資料庫管理系統(tǒng)(DBMS,databasemanagementsystem)是用來操作與管理資料庫的軟體座號姓名出生年月日通訊地址11小丸子1984/1/1臺北市羅斯福路三段9號9樓12花輪1985/5/6臺北市師大路20號3樓13藤木1984/12/20臺北市溫州街42巷7號之114小玉1985/3/17臺北市龍泉街3巷12弄28號15丸尾1984/8/11臺北市金門街100號5樓16永澤1984/10/22臺北市和平東路二段85巷109號15樓之3座號國文分?jǐn)?shù)118012951388149815931681座號數(shù)學(xué)分?jǐn)?shù)1175121001390149215971692座號自然分?jǐn)?shù)1182129713851488151001694座號姓名總分通訊地址11小丸子237臺北市羅斯福路三段9號9樓12花輪292臺北市師大路20號3樓13藤木263臺北市溫州街42巷7號之114小玉278臺北市龍泉街3巷12弄28號15丸尾290臺北市金門街100號5樓16永澤267臺北市和平東路二段85巷109號15樓之3ADO.NET資料庫程式設(shè)計(jì)資料庫觀念

在上一章介紹過檔案系統(tǒng)之後,這一章要介紹的是另一個更重要的機(jī)制--『資料庫系統(tǒng)』。資料庫也是一個檔案,但是和檔案系統(tǒng)有所不同的是,資料庫提供了結(jié)構(gòu)化的資料儲存和檢索方式,讓查詢和存取更有效率。檔案系統(tǒng)可以幫助我們將檔案儲存在硬碟(或是其他的媒介)當(dāng)中,待需要的時候再載入電腦的記憶體當(dāng)中。但是儲存於硬碟上的檔案是透過目錄與檔名的方式來存放,檔案的內(nèi)容則是各種文字或是BinaryCode,與現(xiàn)實(shí)生活當(dāng)中的資料結(jié)構(gòu)差異太大,往往並不容易分類搜尋或是檢索。而資料庫就是在這個狀況下誕生的機(jī)制,它可以幫助使用者(或是程式設(shè)計(jì)師)以更具有結(jié)構(gòu)的方式來儲存資料。ADO.NET資料庫程式設(shè)計(jì)資料庫觀念這個畫面是某公司的訂單輸入畫面,您會發(fā)現(xiàn)它包含了相當(dāng)多不同類型的資料,例如客戶的資料(包含送貨地址…)、公司內(nèi)的業(yè)務(wù)人員、要訂購的產(chǎn)品、數(shù)量與金額…等。如果這些資料都透過檔案系統(tǒng)來儲存,當(dāng)我們要利用電腦進(jìn)行分類(例如找到所有1999年訂購『白起司』的客戶)恐怕是相當(dāng)困難。因此就有了Access、SQLServer、Oracle等『資料庫系統(tǒng)』來幫助我們,對這些複雜的資料進(jìn)行處理。

ADO.NET資料庫程式設(shè)計(jì)資料庫觀念我們可以將複雜的單據(jù),化作單純的表格形式(我們稱之為資料表),將同一類的資料儲存在一起方便管理。例如,底下是幾個不同的資料表(分別是客戶資料、產(chǎn)品資料、以及訂單資料):ADO.NET資料庫程式設(shè)計(jì)資料庫觀念一個資料表當(dāng)中,會有許多的記錄:資料錄具有多的欄位,我們稱之為資料欄(DataColumn)每一筆這樣的記錄我們稱為資料錄(DataRow)因此,一筆資料錄當(dāng)中,有多個欄位,每個欄位就可以儲存不同的資料,有點(diǎn)類似Excel的sheet,讓使用者可以輕鬆的將資料儲存到資料庫中。資料存入資料庫之後,我們就可以針對特定的欄位排序或是以特定的條件搜尋。例如,我們可以透過簡單的指令碼找出上圖這個『訂貨主檔』資料表當(dāng)中,客戶名稱為『東遠(yuǎn)銀行』的所有訂單資料,並且可以依照訂購的日期先後順序來排序顯示出來。ADO.NET資料庫程式設(shè)計(jì)資料庫觀念我們還可以將兩三個不同的資料表加以關(guān)聯(lián),利用多重條件找出符合的資料:資料庫不僅可以支援單一條件單一資料表的搜尋,還可以讓資料表之間交叉比對,例如:找出『公司地址在臺北市』且『今年訂單總運(yùn)費(fèi)超過5000元』的客戶名單。(這些客戶可能我們要換一家更便宜的市區(qū)快遞公司來送貨)ADO.NET資料庫程式設(shè)計(jì)資料庫對VB.NET開發(fā)人員的意義我們可以透過資料庫現(xiàn)有的這些功能,幫助我們設(shè)計(jì)的資訊系統(tǒng)來存取資料。資料庫本身均包含搜尋、排序、以及管理功能,絕大部分的資料庫也支援標(biāo)準(zhǔn)的SQL語言,讓開發(fā)人員或是使用者可以透過簡單的SQL語法來操作資料庫中的資料,對資料進(jìn)行搜尋、新增、修改、刪除等功能。因此,VisualBasic2005的開發(fā)人員,在撰寫資料庫應(yīng)用程式前,可以在資料庫中先建立資料表,待資料表建立完成之後,再透過程式來新增或是編輯資料。在程式運(yùn)作的過程當(dāng)中,資料的儲存和搜尋,都是透過資料庫來完成的,而VisualBasic2005所開發(fā)的程式,則負(fù)責(zé)提供使用者操作介面,讓程式的使用者可以在畫面上輸入資料,進(jìn)行資料的驗(yàn)證,最後透過程式碼將資料儲存到資料庫中。ADO.NET資料庫程式設(shè)計(jì)資料庫對VB.NET開發(fā)人員的意義畫面上的使用者介面您應(yīng)該相當(dāng)熟悉,多半是TextBox與Label,再加上一個ToolStrip(工具列)就完成了。但是程式的核心絕對不只是畫面上的操作方式,例如搜尋、上下筆的切換、或是修改儲存等等,重點(diǎn)是如何把使用者輸入的資料儲存到資料庫中,以及如何讀取出來。ADO.NET資料庫程式設(shè)計(jì)資料庫對VB.NET開發(fā)人員的意義當(dāng)我們利用VS2005建立出上頁的輸入畫面,並且透過程式碼讓使用者輸入的資料存入資料庫之後,您可以檢視資料庫中的內(nèi)容,將會呈現(xiàn)出下面這樣的樣式:15-2建立Access2002/2003資料庫一、建立空白資料庫

二、定義資料表的欄位名稱與資料類型

三、輸入資料表的資料在「擇友俱樂部」資料表按一下滑鼠右鍵,然後選擇[開啟]。依照下圖所示輸入20筆記錄,輸入完畢後點(diǎn)取[關(guān)閉]按鈕。臺北市龍泉街3巷12弄28號在工具箱的[資料]索引標(biāo)籤找到[OleDbCommand]物件,然後按兩下。臺北市和平東路二段85巷109號15樓之3SQLServer資料提供者15-3建立SQLServer2005資料庫CommandText一個資料表當(dāng)中,會有許多的記錄:ExecuteNonQuery()在工具箱的[資料]索引標(biāo)籤找到[OleDbCommand]物件,然後按兩下。OLEDB資料提供者GetBoolean(ordinal)DataReader物件的屬性我們還可以將兩三個不同的資料表加以關(guān)聯(lián),利用多重條件找出符合的資料:15-3建立SQLServer2005資料庫按[開始]\[程式集]\[MicrosoftSQLServer2005]\[SQLServerManagementStudio],啟動SQLServerManagementStudio。

此時,MicrosoftSQLServerManagementStudio會詢問您是否要儲存資料表,請按[是]。

15-4Windows應(yīng)用程式存取資料庫的方式[OleDbConnection]物件的圖示會出現(xiàn)在表單下方的匣中Connection的方法DataAdapter建立OLEDB相容資料庫(例如Access)資料連接的方式如下:臺北市龍泉街3巷12弄28號CommandTimeout二、定義資料表的欄位名稱與資料類型畫面上的使用者介面您應(yīng)該相當(dāng)熟悉,多半是TextBox與Label,再加上一個ToolStrip(工具列)就完成了。[OleDbCommand]物件的圖示會出現(xiàn)在表單下方的匣中。Command的屬性將[Connection]屬性設(shè)定為第15-5-1節(jié)所建立的Connection物件「objConn」ConnectionTimeoutDataReader物件的屬性[OleDbCommand]物件的圖示會出現(xiàn)在表單下方的匣中。因此,VisualBasic2005的開發(fā)人員,在撰寫資料庫應(yīng)用程式前,可以在資料庫中先建立資料表,待資料表建立完成之後,再透過程式來新增或是編輯資料。按[開始]\[程式集]\[MicrosoftSQLServer2005]\[SQLServerManagementStudio],啟動SQLServerManagementStudio。SQLServer資料提供者OLEDB資料提供者ODBC資料提供者Oracle資料提供者15-4-1ADO.NET的架構(gòu)15-4-2.NETFramework資料提供者ConnectionCommandDataReaderDataAdapter15-4-3資料集15-5使用DataReader物件存取資料庫連線模式(ConnectedMode)離線模式(DisconnectedMode)使用DataReader物件讀取資料庫的步驟如下建立資料連接執(zhí)行SQL命令並傳回結(jié)果讀取執(zhí)行結(jié)果15-5-1開啟與關(guān)閉資料庫連接Step1在VisualStudio2005工具箱的[資料]索引標(biāo)籤加入物件:關(guān)閉目前開啟的專案,然後新增一個範(fàn)本為[Windows應(yīng)用程式]、名稱為MyProj-DataAccess的專案。將指標(biāo)移至工具箱,在[資料]索引標(biāo)籤按一下滑鼠右鍵,然後從快顯功能表中選取[選擇項(xiàng)目]。在[.NETFramework元件]標(biāo)籤頁中核取[OleDbConnection]、[OleDbCommand]、[OleDbCommandBuilder]、[OleDbDataAdapter]、[DataView]等五個項(xiàng)目,然後按[確定],這些物件就會出現(xiàn)在工具箱的[資料]索引標(biāo)籤。Step2建立OLEDB相容資料庫(例如Access)資料連接的方式如下:在工具箱的[資料]索引標(biāo)籤找到[OleDbConnection]物件,然後按兩下。[OleDbConnection]物件的圖示會出現(xiàn)在表單下方的匣中

Connection的屬性ConnectionTimeoutDataSourcePacketSizeProviderStateConnection的方法BeginTransaction()Close()Open()

SeetheTextBoox15-5-2使用Command物件執(zhí)行SQL命令在工具箱的[資料]索引標(biāo)籤找到[OleDbCommand]物件,然後按兩下。[OleDbCommand]物件的圖示會出現(xiàn)在表單下方的匣中。Command的屬性Connection

ParametersCommandTimeoutCommandTypeCommandTextTransaction

SeetheTextBooxCommand的方法Cancel()Clone()ExecuteNonQuery()ExecuteReader()ExecuteScalar()SeetheTextBoox請您依照如下步驟設(shè)定Command物件的屬性:將[Name]屬性設(shè)定為objCmd將[CommandType]屬性設(shè)定為[Text]

將[Connection]屬性設(shè)定為第15-5-1節(jié)所建立的Connection物件「objConn」點(diǎn)按[CommandText]屬性右方的按鈕

15-5-3使用DataReader物件讀取資料DimobjReaderAsOleDbDataReader=objCmd.ExecuteReader()DimobjReaderAsSqlDataReader=objCmd.ExecuteReader()

DataReader物件的屬性FieldCountHasRowsIsClosedItem(name|ord

溫馨提示

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

評論

0/150

提交評論