




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第9章數據庫應用程序設計,學習目的,您可以使用VS2008創(chuàng)建數據庫。您可以創(chuàng)建連接數據庫應用程序。通過數據綁定,可以完成與數據庫相關的軟件的設計。9.1創(chuàng)建兩種類型的數據庫應用程序9.2 VS2008數據庫9.3結構化查詢語言SQL 9.4連接數據庫9.5連接數據庫應用程序9.6連接渡邊杏數據庫應用程序和數據綁定9.7學生信息管理系統(tǒng)設計9.8 ComboBox數據庫表9.9存儲過程9.10 LINQ to ADO。Net,數據庫提供了將信息組合在一起的方法。數據庫應用程序系統(tǒng)主要包括數據庫管理系統(tǒng)(DBMS)的三個部分,適用于所有應用程序,如ACCESS。數據庫本身是由特定結構組成的相關數
2、據。數據庫應用程序,為特定數據庫應用程序編寫的程序,用于收集、顯示和更新存儲在數據庫中的數據,以便用戶輕松使用。本主題介紹如何構建數據庫應用程序。典型的數據庫管理系統(tǒng)包括FoxPro、Access、Oracle、SQLserver和Sybase。數據庫管理系統(tǒng)主要基于三種數據模型:層次模型、網格模型和關系模型。目前最廣泛使用的是基于關系模型的關系數據庫。上面列出的數據庫管理系統(tǒng)是關系數據庫。數據庫分為本地數據庫和遠程數據庫,本地數據庫通常不通過網絡訪問,數據庫和數據庫應用程序在同一臺計算機上也稱為單層數據庫。遠程數據庫通常位于遠程計算機上,用戶通過網絡訪問遠程數據庫中的數據。遠程數據庫可以使用
3、兩層、三層或四層結構,兩層結構通常使用C/S模式,即客戶端和服務器模式。三層模式通常使用B/S模式;用戶使用瀏覽器訪問web服務器;web服務器使用CGI、ASP、PHP和JSP等技術訪問數據庫服務器;生成動態(tài)web頁并將其返回給用戶。四層模式是將應用程序邏輯與web服務器分離,然后在web服務器和數據庫服務器之間添加應用程序服務器。9.1可以設計兩種類型的數據庫應用程序、數據庫應用程序,以使用連接和連接渡邊杏。連接是數據庫應用程序通過SQL語句直接對數據庫進行操作(例如,查找記錄、刪除記錄、修改記錄)。連接渡邊杏是指數據庫應用程序從數據庫中讀取感興趣的數據,在內存中創(chuàng)建副本,數據庫應用程序操
4、縱副本,必要時將修改后的副本存儲回數據庫中。設計連接數據庫應用程序通常包括設置數據庫、包含多個表和向表中添加數據(多個記錄)等基本步驟。使用SqlConnection或OleDbConnection類設置數據庫應用程序和數據庫連接對象。使用OleDbCommand或SQLCommand類對象訪問數據庫中的數據,直接在數據庫中的表中查詢指定的記錄,添加記錄,刪除記錄,以及修改記錄中的數據。ADO。使用Net設計未連接的數據庫應用程序通常包含創(chuàng)建數據庫、包含多個表和向表中添加數據等基本步驟。使用SqlConnection或OleDbConnection類設置數據庫應用程序和數據庫連接對象。使用Ol
5、eDbAdapter或SqlDataAdapter類對象從數據庫分配表中刪除感興趣的記錄。從數據庫分配表中提取的興趣記錄將創(chuàng)建為新表,并填充到DataSet類對象中,可以填充多個表,還可以指定DataSet類對象中表和表之間的關系。DataSet對象構建在內存中,可以視為內存中數據庫的子集。取出所有感興趣的數據,然后斷開與數據庫的連接。將DataSet類對象中的數據用作數據源,并將支持數據綁定的控件(如ListView、TextBox等)的屬性綁定到DataSet數據源中的表或表字段,以便用戶瀏覽、查詢和修改。及時更新DataSet的內容,并將修改后的數據保存回源數據庫。、9.2 VS2008
6、構建數據庫、可使用完整版VS2008訪問的數據庫及其命名空間如下:VS2008 express edition僅支持OLE DB和SQL Server文件系統(tǒng)數據庫。SQL server:system . data . SQL client。Oracle:system . data . Oracle client。OLE DB數據庫(例如ACCESS):System。支持Data.OleDb。ODBC數據庫,例如FoxPro:System。支持Data.Odbc。示例9.1使用SQL Server Express創(chuàng)建學生信息管理系統(tǒng)數據庫。包含三個表。表1包含學生編號、名字、性別、照片和密碼字
7、段。表2記錄了記錄編號、課程名稱、分數、具有相應課程成績的學生的學號、表3記錄了教師的基本情況,包括工作編號、名字和密碼字段。因為要記錄全校所有學生的成績,所以把學習成績單字段定義為學號、語文成績、數學成績、物理成績等字段是不恰當的。這樣,如果想增加一門課程,就必須增加領域,必須動態(tài)增加領域,每個專業(yè)開設的課程也不同。部分課程領域只是個別專業(yè),顯然不是。建立資料庫的步驟如下:(1)運行VS2008程序,選擇菜單(V)|其他窗口(E)|數據管理器(d)菜單項,打開數據管理器表單,右鍵單擊字符數據連接,然后從快捷菜單中選擇“添加連接(a)”,繼續(xù)單擊按鈕以打開對話框,如圖9.2所示。單擊瀏覽(b)
8、按鈕,在打開的對話框中,選擇保存數據庫文件的路徑,然后輸入文件名StudentMis.mdf。單擊確定按鈕打開詢問您是否要創(chuàng)建數據庫的對話框,然后單擊是(y)按鈕創(chuàng)建數據庫。在選定路徑下,將顯示兩個數據庫文件StudentMis.mdf和StudentMis_log.ldf??梢栽跀祿芾砥鞅韱沃胁榭创藬祿?。(2)在數據管理器表單中,展開StudentI.mdf,右鍵單擊文字表,從快捷菜單中選擇“添加新表(t)”菜單項,然后打開該表單(如圖9.3中所示),將字段添加到新表中。學號字段StudentNum,創(chuàng)建int類型,允許空渡邊杏,默認值0,主鍵;名稱字段StudentName,nvarc
9、har(20)類型:性別字段StudentSex,nchar(1)類型、中文字符或英文字符長度均為1。字段StudenTphoto、image類型、允許空值;密碼字段StudenPassword,nvarchar(10)類型,必填字段,默認值為123。每個學生的學號必須不同,方法是右鍵單擊字段“StudentNum”,單擊彈出快捷菜單中的“設置主鍵(y)”菜單項,然后設置字段“StudentNum主鍵”??梢允褂脤W號字段徐璐區(qū)分其他記錄,便于查詢。結果如圖9.3所示。單擊工具欄“保存”按鈕,保存名為Student的表。您可以、(3)在資料總管表單中的Student文字上按一下右鍵,然后從快顯功
10、能表中選取顯示表格資料(s)功能表項目,以開啟新表單,并輸入Student表格中每個欄位的資料(例如,第1章、第3章;2、李4、女人;3、王奧,男人;4、路裕,女人。(4)用同樣的方法制作表計分,記錄所有學生的學習成績。包含記錄編號字段ScoreID,int類型,(標志示例)=是;旗標增量=1;旗標種子=1,將欄位ID設定為自動增量欄位,設定為主鍵課程名稱欄位ClassName,nvarchar(30)類型評分欄位Score,int類型;具有此課程成績的學生的學號字段StudentNum,int類型,必填字段。增加一些數據。教師工作編號字段填寫教師狀況表,包括TecherNum、int類型、必
11、填字段、默認值0和主鍵。名稱字段TeacherName,nvarchar(20)類型:密碼字段TeacherPassword,nvarchar(10)類型,必填字段,默認值為123。添加一些數據,1,joung,123。2,關羽,123,這里關羽是管理者。,9.3結構化查詢語言SQL,數據庫應用程序可以通過結構化查詢語言(SQL)訪問數據庫中的數據,使用SQL語句查詢數據庫表中的指定記錄,添加記錄,刪除記錄,以及修改記錄中的數據。幾乎所有數據庫都支持SQL語言,因此要構建數據庫應用程序,必須學習SQL語言。這里只介紹最基本的SQL語句,讀者應該更深入地學習SQL語言。Select語句是最常用的
12、SQL語句,通過該語句可以從數據庫中的表中獲取符合某些條件的記錄集。典型的SQL語句如下:select * from student:選取student表格中所有欄位的所有記錄。Select Student num,StudentName from student:在Student表中,選擇Student num字段和StudentName字段中的所有記錄。select * from score where student num Insert into student(student num,studentname,studentsex) value (5,7,男性學編號字段為5,從Stud
13、ent where student num=1中刪除:刪除Student表中學編號為1的學生。update Student Set Student name=Chen 7 Where Student num=1:將數據庫中Student表中學1號的學生名稱修改為Chen 7:9.4連接數據庫,并且必須先連接到數據庫,然后才能創(chuàng)建數據庫應用程序。要徐璐連接到其他數據庫,必須徐璐使用其他連接類對象。連接到Microsoft Sql Server7.0或更高版本的數據庫時,使用SqlConnection類建立連接會更有效。要使用SqlConnection類,請使用using System。Data
14、.必須引用SqlClient命名空間。Using System。Data使用SqlConnection類設置連接對象的示例為String s=DATABASE=Northwind。SERVER=localhostUID=saPWD=;Sqlconnectionconn=new SQL connection(s);conn . Open();conn . Close();連接到其他數據庫。要使用其他連接字符串,連接字符串將用作連接類對象屬性ConnectionString的值。在此示例連接字符串中,數據庫為數據庫名稱,其中Northwind。必須安裝Microsoft Sql Server數據庫
15、系統(tǒng),然后安裝默認數據庫示例Northwind,才能使用它。SERVER是數據庫服務器IP。例如,如果數據庫服務器和數據庫應用程序位于同一臺計算機上,則可以使用localhost。安全身份驗證是數據庫用戶密碼,UID是用戶名,PWD是密碼,Northwind數據庫是名為sa的用戶名,密碼是空的。您還可以使用Windows身份驗證將UID=sa替換為Integrated Security=True。PWD=是。如果使用SQL Server文件系統(tǒng)數據庫,請按如下方式修改連接字符串:其中D:d.mdf是數據庫文件的絕對路徑,Connect Timeout=30如果在30秒內連接失敗,則會拋出異常。
16、Data Source=。SQLEXPRESSattach dbfilename=d :d . MDF;Integrated Security=TrueConnect Timeout=30User Instance=連接到支持True、ACCESS或OleDb接口的數據庫時,請使用OleDbConnection類using System .必須設置引用Data命名空間的連接。Using System。Data . OleDb其中Provider是正在使用的數據庫驅動程序,DataSource是數據庫位置,studentI.mdb是ACCESS數據庫。例如,string s=provider=M
17、icrosoft . jet . oledb . 4.0。data source=d : VC # studenti . MDB;oledb connection conn=new oledb connection(s);conn . Open();conn . Close();創(chuàng)建9.5連接數據庫應用程序,連接應用程序使用OleDbCommand或SQLCommand類對象記錄SQL語句,通過這兩個類的方法直接在數據庫的表中查詢指定的記錄,添加記錄,刪除記錄,以及修改記錄的數據。9.5.1 OleDbCommand和SQLCommand類設置使用ACCESS數據庫中的OleDbCommand
18、類對象的SQLCommand類查詢對象方法,如下所示:使用這兩個類的方法ExecuteNonQuery、ExecuteReader執(zhí)行的SQL語句。String s=SELECT * FROM studentsqlcommandcommand 1=new SQL command(s,conn);示例9.2用戶的屬性必須立即存儲在數據庫表中。以下示例用于學生信息管理系統(tǒng)中的教師注冊。教師輸入個人信息,單擊注冊按鈕,然后使用SQL語句將數據存儲在9.1中創(chuàng)建的StudentMis.mdf數據庫的Teacher表中。具體步驟如下:(1)創(chuàng)建新項目StudentMis。在表單中添加兩個Texbox控件,textBox1輸入學號或工作編號,textBox2輸入名稱。添加一個PasswordBox控件以輸入密碼。添加三個TextBlock控件以說明textBox或PasswordBox控件的用途。添加標題為“選擇角色”的GroupBox控件,添加標題為“學生”、“教師”和“管理員”的三個RadioButto
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025企業(yè)與個體工商戶簽訂租賃合同
- 2025勞動合同變更與合同期調整
- 2025標準鋼材供貨合同
- 鐵路三查一保活動實施體系
- 逆向工程技術培訓體系
- 牙周病修復治療
- 普通心理學(第2版)課件 第六章 記憶
- 令人無比OMG的50個惡搞網絡英語新詞
- 【慧科訊業(yè)】2024社媒營銷趨勢報告:錨定原點引領中國社交媒體營銷未來之路266mb
- 【慧科訊業(yè)】2023中國國際供應鏈促進博覽會媒體輿情傳播報告134mb
- 領導干部任前談話記錄表
- 普外科常見問答題
- 地腳螺栓安裝方案
- 醫(yī)療衛(wèi)生事業(yè)單位面試題型及答題技巧
- 空間信息技術基礎與前沿-河南理工大學中國大學mooc課后章節(jié)答案期末考試題庫2023年
- 2023年高考英語模擬卷(北京專用)(解析版)
- 雙向轉診管理制度 流程圖
- 心理劇比賽點評金句
- 校園網站的設計與實現-畢業(yè)論文
- 中層管理崗位競聘申請表
- 沸騰爐常用參數
評論
0/150
提交評論