第15章SQL Server 2008綜合應(yīng)用實(shí)例-Windows應(yīng)用程序開(kāi)發(fā)_第1頁(yè)
第15章SQL Server 2008綜合應(yīng)用實(shí)例-Windows應(yīng)用程序開(kāi)發(fā)_第2頁(yè)
第15章SQL Server 2008綜合應(yīng)用實(shí)例-Windows應(yīng)用程序開(kāi)發(fā)_第3頁(yè)
第15章SQL Server 2008綜合應(yīng)用實(shí)例-Windows應(yīng)用程序開(kāi)發(fā)_第4頁(yè)
第15章SQL Server 2008綜合應(yīng)用實(shí)例-Windows應(yīng)用程序開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第第1515章章 SQL Server 2008SQL Server 2008綜合應(yīng)綜合應(yīng)用實(shí)例用實(shí)例 -Windows-Windows應(yīng)用程序開(kāi)發(fā)應(yīng)用程序開(kāi)發(fā) 隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,Microsoft推出的推出的.NET架構(gòu)和架構(gòu)和C#語(yǔ)言成為應(yīng)用程序開(kāi)發(fā)的主流技術(shù)。本章首先介紹了語(yǔ)言成為應(yīng)用程序開(kāi)發(fā)的主流技術(shù)。本章首先介紹了C/S模式模式的工作原理和的工作原理和.NET架構(gòu),然后綜合運(yùn)用架構(gòu),然后綜合運(yùn)用SQL Server 2008和和C#語(yǔ)言開(kāi)發(fā)出一個(gè)采用語(yǔ)言開(kāi)發(fā)出一個(gè)采用C/S模式,基于模式,基于Windows的圖書(shū)館管理系統(tǒng)的圖書(shū)館管理系統(tǒng)的數(shù)據(jù)庫(kù)應(yīng)用

2、系統(tǒng),后臺(tái)數(shù)據(jù)庫(kù)為本書(shū)前面章節(jié)所創(chuàng)建的的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),后臺(tái)數(shù)據(jù)庫(kù)為本書(shū)前面章節(jié)所創(chuàng)建的Library數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)。 15.1 Windows應(yīng)用概述應(yīng)用概述15.1.1 C/S模式的工作原理模式的工作原理在網(wǎng)絡(luò)連接模式中有一種形式的網(wǎng)絡(luò)為客戶(hù)機(jī)在網(wǎng)絡(luò)連接模式中有一種形式的網(wǎng)絡(luò)為客戶(hù)機(jī)/服務(wù)器網(wǎng),服務(wù)器網(wǎng),即即Client/Server。在客戶(hù)機(jī)。在客戶(hù)機(jī)/服務(wù)器網(wǎng)絡(luò)中,服務(wù)器是網(wǎng)絡(luò)的服務(wù)器網(wǎng)絡(luò)中,服務(wù)器是網(wǎng)絡(luò)的核心,而客戶(hù)機(jī)是網(wǎng)絡(luò)的基礎(chǔ),客戶(hù)機(jī)依靠服務(wù)器獲得所需核心,而客戶(hù)機(jī)是網(wǎng)絡(luò)的基礎(chǔ),客戶(hù)機(jī)依靠服務(wù)器獲得所需要的網(wǎng)絡(luò)資源,而服務(wù)器為客戶(hù)機(jī)提供網(wǎng)絡(luò)必須的資源。要的網(wǎng)絡(luò)資源,而服務(wù)器為客戶(hù)

3、機(jī)提供網(wǎng)絡(luò)必須的資源。這里客戶(hù)機(jī)和服務(wù)器都是指通信中所涉及的兩個(gè)應(yīng)用進(jìn)程這里客戶(hù)機(jī)和服務(wù)器都是指通信中所涉及的兩個(gè)應(yīng)用進(jìn)程(軟件)。使用計(jì)算機(jī)的人是計(jì)算機(jī)的(軟件)。使用計(jì)算機(jī)的人是計(jì)算機(jī)的“用戶(hù)用戶(hù)”(user)而)而不是不是“客戶(hù)客戶(hù)”(client)。)。C/S是是Client/Server的縮寫(xiě)。服務(wù)器通常采用高性能的的縮寫(xiě)。服務(wù)器通常采用高性能的PC、工作站或小型機(jī),并采用大型數(shù)據(jù)庫(kù)系統(tǒng),如、工作站或小型機(jī),并采用大型數(shù)據(jù)庫(kù)系統(tǒng),如Oracle、Sybase、Informix或或SQL Server??蛻?hù)端需要安裝專(zhuān)用的客。客戶(hù)端需要安裝專(zhuān)用的客戶(hù)端軟件。戶(hù)端軟件。C/S之間通過(guò)任意

4、的協(xié)議通信,一般要求有特定的客戶(hù)端。之間通過(guò)任意的協(xié)議通信,一般要求有特定的客戶(hù)端。如如QQ就是就是c/s模式,用戶(hù)桌面上的模式,用戶(hù)桌面上的QQ就是騰訊公司的特定的就是騰訊公司的特定的客戶(hù)端,而服務(wù)器就是騰訊的服務(wù)器。另外,網(wǎng)絡(luò)電視也是客戶(hù)端,而服務(wù)器就是騰訊的服務(wù)器。另外,網(wǎng)絡(luò)電視也是如此,用戶(hù)桌面上的如此,用戶(hù)桌面上的pplive、Tvcoo等,這些軟件都是等,這些軟件都是c/s模模式的,他們要求用戶(hù)有特定的客戶(hù)端。式的,他們要求用戶(hù)有特定的客戶(hù)端。 15.1.1 C/S模式的工作原理模式的工作原理C/S結(jié)構(gòu)的優(yōu)點(diǎn)是能充分發(fā)揮客戶(hù)端結(jié)構(gòu)的優(yōu)點(diǎn)是能充分發(fā)揮客戶(hù)端PC的處理能力,很多的處理能

5、力,很多工作可以在客戶(hù)端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是工作可以在客戶(hù)端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶(hù)端響應(yīng)速度快??蛻?hù)端響應(yīng)速度快。如圖如圖15-1所示,所示,Client/Server應(yīng)用系統(tǒng)基本運(yùn)行關(guān)系體應(yīng)用系統(tǒng)基本運(yùn)行關(guān)系體現(xiàn)為現(xiàn)為“請(qǐng)求請(qǐng)求/響應(yīng)響應(yīng)”的應(yīng)答模式。每當(dāng)用戶(hù)需要訪問(wèn)服務(wù)器時(shí)的應(yīng)答模式。每當(dāng)用戶(hù)需要訪問(wèn)服務(wù)器時(shí)就由客戶(hù)機(jī)發(fā)出就由客戶(hù)機(jī)發(fā)出“請(qǐng)求請(qǐng)求”,服務(wù)器接受,服務(wù)器接受“請(qǐng)求請(qǐng)求”并并“響應(yīng)響應(yīng)”,然后執(zhí)行相應(yīng)的服務(wù),把執(zhí)行結(jié)果送回給客戶(hù)機(jī),由它進(jìn)一然后執(zhí)行相應(yīng)的服務(wù),把執(zhí)行結(jié)果送回給客戶(hù)機(jī),由它進(jìn)一步處理后再提交給用戶(hù)。步處理后再提交給用戶(hù)。 圖圖15

6、-1 Client/Server體系結(jié)構(gòu)體系結(jié)構(gòu) 15.1.2 .NET框架框架 .NET框架是框架是Microsoft公司用于創(chuàng)建應(yīng)用程序的一組對(duì)象公司用于創(chuàng)建應(yīng)用程序的一組對(duì)象和藍(lán)圖(和藍(lán)圖(BluePrint)。)。.NET框架下開(kāi)發(fā)的所有應(yīng)用程序(包框架下開(kāi)發(fā)的所有應(yīng)用程序(包括括C#應(yīng)用程序)都包含一些關(guān)鍵特性,用于確保其兼容性、應(yīng)用程序)都包含一些關(guān)鍵特性,用于確保其兼容性、安全性和穩(wěn)定性。安全性和穩(wěn)定性。1. 公共語(yǔ)言運(yùn)行時(shí)公共語(yǔ)言運(yùn)行時(shí) 公共語(yǔ)言運(yùn)行時(shí)(公共語(yǔ)言運(yùn)行時(shí)(Common Language Runtime,CLR)是一種管理代碼執(zhí)行情況的環(huán)境,用于運(yùn)行并維護(hù)代碼。是一

7、種管理代碼執(zhí)行情況的環(huán)境,用于運(yùn)行并維護(hù)代碼。在在.NET框架中,代碼被編譯成一種微軟中間語(yǔ)言框架中,代碼被編譯成一種微軟中間語(yǔ)言(Microsoft Intermediate Language,MSIL)的語(yǔ)言,而不是)的語(yǔ)言,而不是編譯成某種計(jì)算機(jī)能夠理解的語(yǔ)言。這種語(yǔ)言以簡(jiǎn)寫(xiě)方式表示所編譯成某種計(jì)算機(jī)能夠理解的語(yǔ)言。這種語(yǔ)言以簡(jiǎn)寫(xiě)方式表示所有代碼。有代碼。C#應(yīng)用程序也被編譯為應(yīng)用程序也被編譯為MSIL。當(dāng)要運(yùn)行程序時(shí),。當(dāng)要運(yùn)行程序時(shí),CLR將接管工作,進(jìn)一步將代碼編譯成計(jì)算機(jī)的本機(jī)語(yǔ)言,這樣,將接管工作,進(jìn)一步將代碼編譯成計(jì)算機(jī)的本機(jī)語(yǔ)言,這樣,MSIL便可以用于任何類(lèi)型的計(jì)算機(jī)。便

8、可以用于任何類(lèi)型的計(jì)算機(jī)。CLR懂得許多不同的計(jì)算懂得許多不同的計(jì)算機(jī)語(yǔ)言,并完成所有的變異工作。應(yīng)用程序編譯后,便可以在任機(jī)語(yǔ)言,并完成所有的變異工作。應(yīng)用程序編譯后,便可以在任何計(jì)算機(jī)上運(yùn)行。何計(jì)算機(jī)上運(yùn)行。.NET框架與框架與JAVA平臺(tái)有許多類(lèi)似的地方。平臺(tái)有許多類(lèi)似的地方。JAVA代碼也是代碼也是由一種被稱(chēng)為由一種被稱(chēng)為JAVA虛擬機(jī)(虛擬機(jī)(JVM)的運(yùn)行環(huán)境編譯和執(zhí)行的,)的運(yùn)行環(huán)境編譯和執(zhí)行的,可以跨平臺(tái)使用??梢钥缙脚_(tái)使用。 15.1.2 .NET框架框架2. 統(tǒng)一的編程類(lèi)統(tǒng)一的編程類(lèi).NET框架為開(kāi)發(fā)人員提供了一個(gè)統(tǒng)一、面向?qū)ο?、層次框架為開(kāi)發(fā)人員提供了一個(gè)統(tǒng)一、面向?qū)ο蟆?/p>

9、層次化、可擴(kuò)展的類(lèi)庫(kù)集化、可擴(kuò)展的類(lèi)庫(kù)集(API)。.NET框架統(tǒng)一了微軟當(dāng)前的各種框架統(tǒng)一了微軟當(dāng)前的各種不同類(lèi)框架。這樣,開(kāi)發(fā)人員無(wú)需學(xué)習(xí)多種框架就能順利編不同類(lèi)框架。這樣,開(kāi)發(fā)人員無(wú)需學(xué)習(xí)多種框架就能順利編程。通過(guò)創(chuàng)建跨編程語(yǔ)言的公共程。通過(guò)創(chuàng)建跨編程語(yǔ)言的公共API集,集,.NET框架可實(shí)現(xiàn)跨語(yǔ)框架可實(shí)現(xiàn)跨語(yǔ)言繼承性、錯(cuò)誤處理功能和調(diào)試功能。實(shí)際上,從言繼承性、錯(cuò)誤處理功能和調(diào)試功能。實(shí)際上,從JScript到到C+的所有編程語(yǔ)言,都是相互等同的,開(kāi)發(fā)人員可以自由選的所有編程語(yǔ)言,都是相互等同的,開(kāi)發(fā)人員可以自由選擇理想的編程語(yǔ)言。擇理想的編程語(yǔ)言。 15.1.3 Visual Stu

10、dio編程環(huán)境編程環(huán)境1. C#開(kāi)發(fā)環(huán)境開(kāi)發(fā)環(huán)境Visual Studio是微軟公司推出的開(kāi)發(fā)環(huán)境。是目前最流是微軟公司推出的開(kāi)發(fā)環(huán)境。是目前最流行的行的Windows平臺(tái)應(yīng)用程序開(kāi)發(fā)環(huán)境。目前已經(jīng)開(kāi)發(fā)到平臺(tái)應(yīng)用程序開(kāi)發(fā)環(huán)境。目前已經(jīng)開(kāi)發(fā)到9.0版版本,也就是本,也就是Visual Studio 2008。Visual Studio可以用來(lái)創(chuàng)可以用來(lái)創(chuàng)建建Windows平臺(tái)下的平臺(tái)下的Windows應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來(lái)創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和可以用來(lái)創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和Office插件。插件。Visual Studio 2008,包含

11、可視化設(shè)計(jì)工具、編程語(yǔ)言和,包含可視化設(shè)計(jì)工具、編程語(yǔ)言和代碼編輯器,是高效率的開(kāi)發(fā)環(huán)境。代碼編輯器,是高效率的開(kāi)發(fā)環(huán)境。本章的圖書(shū)館管理系統(tǒng)就是采用本章的圖書(shū)館管理系統(tǒng)就是采用Visual Studio 2008開(kāi)發(fā)開(kāi)發(fā)環(huán)境,使用環(huán)境,使用C#語(yǔ)句設(shè)計(jì)開(kāi)發(fā)。語(yǔ)句設(shè)計(jì)開(kāi)發(fā)。 15.1.3 Visual Studio編程環(huán)境編程環(huán)境2. 連接連接SQL Server數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)連接代碼如下:連接代碼如下:string strConnection=user id=sa;password=;strConnection+=initial catalog=數(shù)據(jù)庫(kù)名數(shù)據(jù)庫(kù)名;Server=服務(wù)器名服務(wù)器名

12、;SqlConnection objConnection=new SqlConnection(strConnection);參數(shù)說(shuō)明如下:參數(shù)說(shuō)明如下:“user id=sa”:連接數(shù)據(jù)庫(kù)的驗(yàn)證用戶(hù)名為:連接數(shù)據(jù)庫(kù)的驗(yàn)證用戶(hù)名為sa?!皃assword=”:連接數(shù)據(jù)庫(kù)的驗(yàn)證密碼為空。:連接數(shù)據(jù)庫(kù)的驗(yàn)證密碼為空。注意,注意,SQL Server必須已經(jīng)設(shè)置了需要用戶(hù)名和密碼來(lái)登錄,否則必須已經(jīng)設(shè)置了需要用戶(hù)名和密碼來(lái)登錄,否則不能用這樣的方式來(lái)登錄。如果不能用這樣的方式來(lái)登錄。如果SQL Server設(shè)置為設(shè)置為Windows登錄,那么登錄,那么在這里就不需要使用在這里就不需要使用“user i

13、d”和和“password”這樣的方式來(lái)登錄,而需這樣的方式來(lái)登錄,而需要使用要使用“Trusted_Connection=SSPI”來(lái)進(jìn)行登錄。來(lái)進(jìn)行登錄?!癷nitial catalog=數(shù)據(jù)庫(kù)名數(shù)據(jù)庫(kù)名”,別名為,別名為“Database”,本句可以寫(xiě)成,本句可以寫(xiě)成“Database=數(shù)據(jù)庫(kù)名數(shù)據(jù)庫(kù)名”。“Server=服務(wù)器名服務(wù)器名”,別名為,別名為“Data Source”,“Address”或或“Addr”:如果使用的是本地?cái)?shù)據(jù)庫(kù)且定義了實(shí)例名,則可以寫(xiě)為:如果使用的是本地?cái)?shù)據(jù)庫(kù)且定義了實(shí)例名,則可以寫(xiě)為“Server=(local)實(shí)例名實(shí)例名”;如果是遠(yuǎn)程服務(wù)器,則將;如果

14、是遠(yuǎn)程服務(wù)器,則將“(local)”替換為遠(yuǎn)替換為遠(yuǎn)程服務(wù)器的名稱(chēng)或程服務(wù)器的名稱(chēng)或IP地址。地址。 15.2 基于基于Windows環(huán)境的圖書(shū)館管理系統(tǒng)的環(huán)境的圖書(shū)館管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)設(shè)計(jì)與實(shí)現(xiàn)15.2.1 設(shè)計(jì)設(shè)計(jì)關(guān)于圖書(shū)館管理系統(tǒng)的需求分析和數(shù)據(jù)庫(kù)設(shè)計(jì)以及關(guān)于圖書(shū)館管理系統(tǒng)的需求分析和數(shù)據(jù)庫(kù)設(shè)計(jì)以及E-R圖圖已在本書(shū)第三章中介紹。系統(tǒng)功能圖如圖已在本書(shū)第三章中介紹。系統(tǒng)功能圖如圖15-2所示。所示。圖圖15-2 圖書(shū)館管理系統(tǒng)功能圖圖書(shū)館管理系統(tǒng)功能圖15.2.2 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn)1. 項(xiàng)目創(chuàng)建項(xiàng)目創(chuàng)建 首先在首先在Visual Studio 2008創(chuàng)建一個(gè)項(xiàng)目創(chuàng)建一個(gè)項(xiàng)目Libra

15、ryManage。步驟如下:。步驟如下: 1) 在在Visual Studio 2008在菜單中選擇在菜單中選擇“新建新建”“項(xiàng)目項(xiàng)目”如圖如圖15-3所示。所示。2) 打開(kāi)打開(kāi)“新建項(xiàng)目新建項(xiàng)目”對(duì)話(huà)框。在對(duì)話(huà)框。在“項(xiàng)目類(lèi)型項(xiàng)目類(lèi)型”中選擇中選擇“Visual C#” “Windows”,在,在“模板模板”中選擇中選擇“Windows窗體應(yīng)用程序窗體應(yīng)用程序”,在,在“名稱(chēng)名稱(chēng)”文本框中輸入項(xiàng)目名稱(chēng)文本框中輸入項(xiàng)目名稱(chēng)LibraryManage,在,在“位置位置”文本框中通過(guò)文本框中通過(guò)“瀏覽瀏覽”按鈕設(shè)置項(xiàng)目所在路徑為按鈕設(shè)置項(xiàng)目所在路徑為“D:db bookLibrary”,如圖,如圖

16、15-4所示。所示。3) 單擊單擊“確定確定”按鈕,開(kāi)始項(xiàng)目編輯,如圖按鈕,開(kāi)始項(xiàng)目編輯,如圖15-5所示。所示。 圖圖15-3 新建項(xiàng)目圖新建項(xiàng)目圖 15-4 設(shè)置項(xiàng)目名稱(chēng)設(shè)置項(xiàng)目名稱(chēng) 圖圖15-5 進(jìn)入項(xiàng)目設(shè)計(jì)進(jìn)入項(xiàng)目設(shè)計(jì) 15.2.2 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn)2. 窗體設(shè)計(jì)窗體設(shè)計(jì)本系統(tǒng)需要多個(gè)窗體,由于篇幅所限,在此主要實(shí)現(xiàn)兩個(gè)窗體,其余本系統(tǒng)需要多個(gè)窗體,由于篇幅所限,在此主要實(shí)現(xiàn)兩個(gè)窗體,其余窗體請(qǐng)讀者練習(xí),補(bǔ)充完整。窗體請(qǐng)讀者練習(xí),補(bǔ)充完整。(1) 登陸窗體登陸窗體Login.cs在在Login.cs中共有中共有6個(gè)組件,見(jiàn)表個(gè)組件,見(jiàn)表15-1。 登陸窗體如圖登陸窗體如圖15-6所示。

17、輸入正確的用戶(hù)和密碼,進(jìn)入系統(tǒng)。所示。輸入正確的用戶(hù)和密碼,進(jìn)入系統(tǒng)。 登陸窗體的模塊圖如圖登陸窗體的模塊圖如圖15-7所示。所示。 表表15-1 Login.cs中的組件中的組件 圖圖15-6 登陸窗體登陸窗體 圖圖15-7 “登陸窗體登陸窗體”模塊圖模塊圖15.2.2 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn)(2) 圖書(shū)信息窗體圖書(shū)信息窗體BookInfo.cs在在BookInfo.cs中共有中共有33個(gè)組件,見(jiàn)表個(gè)組件,見(jiàn)表15-2。 表表15-2 BookInfo中的控件中的控件 15.2.2 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn)在圖書(shū)信息窗體中,點(diǎn)擊在圖書(shū)信息窗體中,點(diǎn)擊“檢索檢索”按鈕可以實(shí)現(xiàn)按條件檢按鈕可以實(shí)現(xiàn)按條件檢索,如檢索書(shū)名中

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論