數(shù)據(jù)庫程序設計講解_第1頁
數(shù)據(jù)庫程序設計講解_第2頁
數(shù)據(jù)庫程序設計講解_第3頁
數(shù)據(jù)庫程序設計講解_第4頁
數(shù)據(jù)庫程序設計講解_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1上節(jié)課復習學習開發(fā)數(shù)據(jù)庫應用系統(tǒng),應該具備什么基礎?需掌握以下四點:基本網(wǎng)絡基礎

基本數(shù)據(jù)庫基礎基本的開發(fā)工具.net

和vs

2005/2008 的關系ZJWCHC第2講開發(fā)第一個數(shù)據(jù)庫程序本講目標3基礎構(gòu)建開發(fā)環(huán)境開發(fā)第一個基于控制臺的數(shù)據(jù)庫程序解析該程序開發(fā)第一個windows

form 數(shù)據(jù)庫項目解析該程序2.1構(gòu)建開發(fā)環(huán)境4Vs

2005是一個集成了多種開發(fā)語音的可視化開發(fā)環(huán)境。Vs

2005開發(fā)的數(shù)據(jù)庫應用系統(tǒng)主要基于C/S模式或B/S模式。2.1.1

C/S

模式的開發(fā)環(huán)境5網(wǎng)絡最終用戶開發(fā)人員Sql

server2005服務器C/S模式應用系統(tǒng).net

framework可再發(fā)行組件包可能需要sql

server

2005客戶機Vs

2005.net

framework

sdk(隨vs

2005同時安裝)sql

server

2005客戶機2.1.2

B/S6模式的開發(fā)環(huán)境網(wǎng)絡最終用戶開發(fā)人員Sql

server2005服務器IE瀏覽器Vs

2005.net

framework

sdk(隨vs

2005同時安裝)sql

server

2005客戶機Web

服務器ASP

.NET網(wǎng)站

IIS

5.0.net

framework可再發(fā)行組件包可能需要sql

server

2005客戶機2.2開發(fā)第一個基于控制臺的數(shù)據(jù)庫程序7在開發(fā)過程中會遇到一些新的概念和不理解的地方,后面詳細會講,希望大家不要拘泥于具體細節(jié)通過這個開發(fā)過程大家初步領略vs

2005在開發(fā).net數(shù)據(jù)庫應用系統(tǒng)的快捷2.2.1創(chuàng)建sql

server

20058用戶數(shù)據(jù)庫數(shù)據(jù)庫名稱為:db_student數(shù)據(jù)表為:t_student表結(jié)構(gòu)如下:列名數(shù)據(jù)類型允許空T_S_NAMECHAR(20)否T_S_SEXCHAR(2)否T_S_NATIONALITYCHAR(10)否T_S_AGEINT否2.2.2開發(fā)基于控制臺的.net數(shù)據(jù)庫程序9步驟如下:啟動vs2005/2008,在【菜單欄】選擇【文件】/【新建】/【項目】選項,新建一個項目在接下來的界面中【項目類型】:visual

c#【模板】:選擇控制臺應用程序【名稱】:使用默認生成的“consoleapplication1”單擊【確定】按鈕在【解決方案資源管理器】面板中選擇

program.cs 文件并雙擊生成代碼修改代碼調(diào)試程序程序執(zhí)行結(jié)果操作演示2.3

解析第1

個.net

數(shù)據(jù)庫程序10Visual

C#c#和C、Java大家有沒有C和java的基礎知識并不要緊,只需記住C#其實就是吸收了很多程序設計語音(尤其是java和c)之后推出的全新的程序設計語音就夠了。Visual

c#大家肯定聽說過Visual

c++,visual

basic這樣的程序設計工具。很自然,visual

c#就是C#的可視化設計工具??梢暬ぞ叩某霈F(xiàn)使得程序員不必花費過多的精力來設計程序的菜單、界面等基本要素,而是關注于程序的設計和體系結(jié)構(gòu)上。設想一下如果沒有可視化工具的出現(xiàn),那么連顯示一個下拉菜單這樣的基本操作都需要程序員編制成百上千行語句。2.3.7命名空間11在vs

2005中,為程序開發(fā)人員提供了很多已經(jīng)設計好的類。這些類可以直接被我們在開發(fā)程序時實例化,然后直接使用。通過使用這些類,程序開發(fā)人員可以大大減輕自己的工作量。怎么用快捷的方式管理這些類,就用到了命名空間的概念,引入命名空間后,后面的程序代碼中就可以直接使用這些命名空間中提供的類及其方法,否則將出現(xiàn)錯誤。許許多多功能的類集中在一起,就是.net

framework中提供的類庫。2.3.8設置項目的啟動文件12一個項目中可能會有多個文件,那么在啟動時先啟動哪個文件呢?可以通過設置項目的屬性來設定。步驟如下:在【解決方案資源管理器】中選擇項目,用鼠標右鍵單擊,在出現(xiàn)的快捷菜單中選擇【屬性】選項。切換到【應用程序】選項卡,在【啟動對象】下拉列表框中可以設置項目的啟動文件。演示操作2.3.9program.cs13文件代碼分析()過程,然后開始順序執(zhí)行。的.exe文件時,.net會自動找到該文件中的sub

main(3)過程GetConnectionString()該過程使用return關鍵字返回一個固定的字符串其代碼結(jié)構(gòu)分為三部分:引用系統(tǒng)命名空間執(zhí)行入口過程main()main()是一個特殊的過程,它定義了程序開始執(zhí)行的代碼。當執(zhí)行.net編譯后程序代碼分析如下大家可能對上述程序中的一些代碼還不是很了解,將在以后的學習中逐步深入。大家先感受一下這樣一個.net數(shù)據(jù)庫程序設計的實例,掌握其總體結(jié)構(gòu)和基本概念,清楚可能遇到的問題,帶著問題開始后續(xù)學習或通過MSDN

尋求幫助。學習新技術(shù)的一個指導思想:學習一門新技術(shù),先不要拘泥于具體的細節(jié),而是首先要從宏觀上、全局上了解技術(shù)概貌,然后再深入學習。142.4開發(fā)第一個form15數(shù)據(jù)庫項目一般情況下,黑白窗口顯示的控制臺用來調(diào)試程序,現(xiàn)在真正給最終用戶使用的數(shù)據(jù)庫項目幾乎都采用

windows

form 界面,所以開發(fā)windows

form 數(shù)據(jù)庫項目才是我們主要的方向。我們不通過編程來開發(fā)第一個windows

form 數(shù)據(jù)庫項目。通過該項目,大家領略vs

2005

在開發(fā)數(shù)據(jù)庫項目上的強大優(yōu)勢,然后我們講這個項目的結(jié)構(gòu),最后總結(jié)出開發(fā)

.net數(shù)據(jù)庫項目需要學習的關鍵技術(shù)。162.4.1

開發(fā)過程創(chuàng)建空白的windows

form 項目在項目中添加數(shù)據(jù)源目的是將sql

server

2005

數(shù)據(jù)庫服務器上的DB_STUDENT 數(shù)據(jù)庫的T_STUDENT 表的數(shù)據(jù)提取出來,并顯示在這個窗體form1

上。在【菜單欄】選擇【數(shù)據(jù)】/【添加新數(shù)據(jù)源】選項【選擇數(shù)據(jù)源類型】界面中【應用程序從哪里獲取數(shù)據(jù)】列表框中選擇【數(shù)據(jù)庫】,單擊下一步【選擇您的數(shù)據(jù)連接界面中】界面中單擊【新建連接】在【添加連接】界面,進行設置,點擊【測試連接】連接成功后有提示信息查看生成的連接字符串Data

Source=PC2011030515mmk;InitialCatalog=DB_STUDENT;Integrated

Security=True(7)連接字符串進行保存(8)選擇數(shù)據(jù)庫對象界面(9)【項目設計】界面(10)運行結(jié)果演示操作2.4.2項目的執(zhí)行流程17Program.cs

從main方法開始執(zhí)行、運行一個項Ap目pl屬ic性at設io置n.啟Ru動n(程ne序w

F為orPmr1o(g)r)a;m.csT_STUDENTBindingNavigatorSaveItem_Click()方法:窗體上單f擊or保m1存按窗鈕體后的代碼From1.cs 首先運行form1_load ()方法,該方法提取數(shù)據(jù)送入數(shù)據(jù)集對象db_STUDENTDataSet 的數(shù)據(jù)表T_STUDENT

中。一旦發(fā)生更新數(shù)據(jù),則調(diào)用

t_STUDENTBindingNavigatorSaveITEM_Click方法完成更新InFoirtmi_alloiazde(C)o方mp法on:en該t方(方)法:定類義F了or啟m1動的并構(gòu)顯造示方窗法體,時初首始先化執(zhí)時行將的在代窗碼體。上安裝定義的設置參數(shù)產(chǎn)生各種控件T_STUDENTBindingNavigatorSaveItem_Click()

方法18將用戶在窗體中修改的數(shù)據(jù)寫入到內(nèi)存中的DataSet 數(shù)據(jù)集對象中。本實例的數(shù)據(jù)集對象是dB_STUDENTDataSet.this.tSTUDENTBindingSource.EndEdit();通過表適配器對象t_STUDENTTableAdapter

的update

方法將客戶機內(nèi)存中的數(shù)據(jù)集對象提交給

SQLServer

2005 服務器。This.t_STUDENTTableAdapter.Update(

this.dB_STUDENTDataSet.T_STUDENT

);Form_Load()

方法19調(diào)用表適配器對象的

Fill方法從SQL

Server2005 數(shù)據(jù)庫中提取出數(shù)據(jù),填充到客戶機內(nèi)存中的數(shù)據(jù)集對象的

T_STUDENT 表中。中。private

void

Form1_Load(object

sender,

EventArgs

e){//這行代碼將數(shù)據(jù)加載到表“dB_STUDENTDataSet.T_STUDENT”this.t_STUDENTTableAdapter.Fill(this.dB_STUDENTDataSet.T_STUDENT);}2.4.3項目中數(shù)據(jù)的流向20作為數(shù)據(jù)庫項目,完成的是將數(shù)據(jù)從服務器上提取出來顯示、修改,將修改后的數(shù)據(jù)又反饋回服務器的數(shù)據(jù)庫中。作為開發(fā)人員,必須清楚數(shù)據(jù)在項目的執(zhí)行過程中是如何流動的,也就是說,在窗體如此眾多的與數(shù)據(jù)庫有關的對象中,它們是如何有機地聯(lián)系在一起的,它們之間通過什么聯(lián)系在一起,數(shù)據(jù)在這些對象之間是如何流動的?T_studentBindingsource21t_STUDENTBindingNavigatorDB_STUDENT數(shù)據(jù)庫T_S_AGETextBoxT_S_NATIONALITYTextBoxT_S_SEXTextBoxT_S_NAMETextBox顯示數(shù)據(jù)的文本框綁定數(shù)據(jù)操作數(shù)據(jù)表單Form1操作數(shù)據(jù)顯示數(shù)據(jù)dB_STUDENTDataSet

項目中數(shù)據(jù)的T_流st向udentTableAdapter內(nèi)存中存儲數(shù)據(jù) 提取數(shù)據(jù)重要的四個對象223.t_STUDENTBindingSource對象:綁定數(shù)據(jù)集對象和顯示數(shù)據(jù)的4個文本框?qū)ο?,以及T_studentBindingNavigator對象4.t_STUDENTBindingNavigator對象:完成數(shù)據(jù)的操作功能1.t_STUDENTTableAdapter對象:完成從SQL

Server

2005 數(shù)據(jù)庫中提取數(shù)據(jù)到數(shù)據(jù)集對象dB_STUDENTDataSet的功能。數(shù)據(jù)集對象修改后的數(shù)據(jù)還要通過該對象最后提交到數(shù)據(jù)庫中。2.

dB_STUDENTDataSet

對象:在客戶機內(nèi)存上存儲數(shù)據(jù)庫的數(shù)據(jù)1.t_STUDENTTableAdapter

對象23該對象是表適配器對象,完成將數(shù)據(jù)庫DB_STUDENT 中的數(shù)據(jù)提取出來,送入客戶機上的內(nèi)存如果把SQL

Server2005服務器上的數(shù)據(jù)庫比喻為水塔中的水的話,那么,表適配器對象就好比是水塔的開關,這個開關是用于控制水塔的水如何流出的,同時更新后的數(shù)據(jù)也要通過該對象才能提交到數(shù)據(jù)庫中。表適配器對象到底是什么呢?(演示操作)表適配器對象實際上就是查詢數(shù)據(jù)的Select語句而已,通過這些語句就能夠控制提取什么樣的數(shù)據(jù)2.dB_STUDENTDataSet

對象24數(shù)據(jù)提取出來之后被送入客戶機的內(nèi)存中,因為操作系統(tǒng)首先都是在內(nèi)存中操作數(shù)據(jù)的。那么客戶機的內(nèi)存中是如何來存儲SQL

Server

2005 服務器上流入的數(shù)據(jù)的呢?DataSet(數(shù)據(jù)集)被用于在客戶機內(nèi)存上存儲數(shù)據(jù)庫的數(shù)據(jù)。我們可以把該對象比喻為水塔流出的水到達每個家庭(客戶機)后的存儲水的容器。表示數(shù)據(jù)集對象中表的方法this.t_STdUBD_ESNTUTDaEbNlTeDAadtapStetr.TF_iSlTlU(DtEhNiTs.dB_STUDENTDataSet.T_STU

DENT);在Form1.cs文件中的Form_Load()方法的以下代碼就完成了將提取出來的數(shù)據(jù)填充到數(shù)據(jù)集對象的表中。3.t_STUDENTBindingSource

對象25數(shù)據(jù)集對象中表的數(shù)據(jù)如何才能顯示到4個文本框中呢?這就是數(shù)據(jù)綁定對象來完成的功能查看該對象的【屬性】面板,有兩個重要的屬性:DataSource

:設置綁定對象使用的數(shù)據(jù)集對象;DataMember :設置了綁定對象使用的數(shù)據(jù)集對象中的數(shù)據(jù)對象,這里是T_STUDENT 表。綁定對象來負責通過這兩個屬性的設置,數(shù)據(jù)集對象的表的數(shù)據(jù)就由和顯示數(shù)據(jù)數(shù)據(jù)的對象打交道4.t_STUDENTBindingNavigator26對象某個按鈕。CountItem:計數(shù)的按鈕DeleteItem:刪除按鈕MoveFirstItem:移動到首記錄的按鈕MoveLastItem:移動到尾記錄的按鈕MoveNextItem :移動到下M記ov錄eP的re按vi鈕ousItem :移動到上記錄的按鈕PositionItem:位置按鈕如何操作數(shù)據(jù)集對象中表的數(shù)據(jù)呢?窗體Form1 上有一個綁定導航對象,該對象顯示了若干基本操作的快捷按鈕。查看該對象的【屬性】面板,有幾個重要的屬性:BindingSource:設置綁定導航對象使用的綁定數(shù)據(jù)對象這些按鈕所對應的執(zhí)行代碼是在AddNewItSeymste:m.添Win加do新ws數(shù).F據(jù)orm時s.對Bi應nd的ing快Na捷vi按ga鈕tor是中綁定導航對象上的定義的,不需要單獨編寫代碼4.t_STUDENTBindingNavigator

對象27BindingNavigator

對象中還有一個非常重要的快捷按鈕【保存】是不在【屬性】面板中設置。其功能是通過Form1.cs 文件中以下的代碼實現(xiàn)的。關鍵代碼回顧28//窗體驗證

this.Validate();//在窗體中修改的數(shù)據(jù)寫入到內(nèi)存DataSet數(shù)據(jù)集中

this.t_STUDENTBindingSource.EndEdit();//將客

溫馨提示

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

評論

0/150

提交評論