版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、機(jī)械工業(yè)出版社 6.1 SQL Server 2000系統(tǒng)結(jié)構(gòu)系統(tǒng)結(jié)構(gòu) 6.1.1 N-Tier客戶(hù)機(jī)客戶(hù)機(jī)服務(wù)器結(jié)構(gòu)服務(wù)器結(jié)構(gòu) 6.1.2. SQL Server 2000與與Internet高度集成功能高度集成功能 6.1.4 SQL Server 2000的數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象的數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象 6.1.5 SQL Server 2000的系統(tǒng)數(shù)據(jù)庫(kù)的系統(tǒng)數(shù)據(jù)庫(kù) 6.2 SQL Server 2000的管理工具的管理工具 6.3 Transact-SQL功能及實(shí)例功能及實(shí)例 6.3.1 Transact-SQL的數(shù)據(jù)定義功能及實(shí)例的數(shù)據(jù)定義功能及實(shí)例 6.3.2 Transact-SQL
2、的數(shù)據(jù)操縱功能及實(shí)例的數(shù)據(jù)操縱功能及實(shí)例 6.4 SQL Server 2000數(shù)據(jù)庫(kù)操作工具及其使用數(shù)據(jù)庫(kù)操作工具及其使用 6.4.1 用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫(kù)用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫(kù) 6.4.2 在企業(yè)管理器中定義和管理表在企業(yè)管理器中定義和管理表 SQL Server 2000是Microsoft公司推出的關(guān)系型網(wǎng)絡(luò)數(shù)據(jù)庫(kù)管理系統(tǒng),它的工作環(huán)境可以是Windows NT、Windows XP、 Windows 2000等。SQL Server 2000可以作為桌面型數(shù)據(jù)庫(kù)系統(tǒng),也可以作為客戶(hù)機(jī)/服務(wù)器型(Client/Server系統(tǒng))或?yàn)g覽器/服務(wù)器型(Browser/Server系統(tǒng))的
3、數(shù)據(jù)庫(kù)系統(tǒng)。1.桌面型數(shù)據(jù)庫(kù)系統(tǒng) SQL Server 2000安裝在客戶(hù)端計(jì)算機(jī)中,數(shù)據(jù)庫(kù)存儲(chǔ)在客戶(hù)端計(jì)算機(jī)中而讓其中的應(yīng)用程序獨(dú)自使用。2. 兩層結(jié)構(gòu)的數(shù)據(jù)庫(kù)系統(tǒng) 客戶(hù)機(jī)/服務(wù)器型數(shù)據(jù)庫(kù)系統(tǒng)(C/S系統(tǒng)) 瀏覽器/服務(wù)器型數(shù)據(jù)庫(kù)系統(tǒng)(B/S系統(tǒng)) SQL Server 2000系統(tǒng)安裝在網(wǎng)絡(luò)服務(wù)器中,數(shù)據(jù)庫(kù)為網(wǎng)絡(luò)中的客戶(hù)機(jī)應(yīng)用程序共享。兩層結(jié)構(gòu)的數(shù)據(jù)庫(kù)系統(tǒng)可以通過(guò)網(wǎng)絡(luò)連接產(chǎn)品將多臺(tái)計(jì)算機(jī)連接為企業(yè)內(nèi)部網(wǎng),能夠與Internet相連并發(fā)布網(wǎng)頁(yè)。網(wǎng)絡(luò)中的一臺(tái)計(jì)算機(jī)稱(chēng)為服務(wù)器(Server,后端),其他的計(jì)算機(jī)稱(chēng)為客戶(hù)機(jī)(Client,前端)應(yīng)用程序及瀏覽器安裝在客戶(hù)機(jī)端,負(fù)責(zé)建立用戶(hù)界面,通過(guò)
4、用戶(hù)界面讓用戶(hù)向數(shù)據(jù)庫(kù)添加、修改、刪除、查詢(xún)數(shù)據(jù);數(shù)據(jù)庫(kù)服務(wù)程序及數(shù)據(jù)庫(kù)安裝在服務(wù)器端,數(shù)據(jù)庫(kù)服務(wù)器執(zhí)行數(shù)據(jù)庫(kù)的存儲(chǔ)、檢索、管理、安全性及數(shù)據(jù)備份等工作;服務(wù)器和客戶(hù)機(jī)間通過(guò)數(shù)據(jù)接口實(shí)現(xiàn)數(shù)據(jù)通信。B/S結(jié)構(gòu)中用戶(hù)界面是瀏覽器中的網(wǎng)頁(yè),應(yīng)用程序以網(wǎng)頁(yè)及鏈接的方式運(yùn)行,客戶(hù)機(jī)端只需要有瀏覽器,不需要安裝其他應(yīng)用程序。C/S結(jié)構(gòu)的客戶(hù)端要有專(zhuān)門(mén)的應(yīng)用軟件系統(tǒng),還要安裝和設(shè)置支持應(yīng)用程序運(yùn)行的軟件環(huán)境。兩層數(shù)據(jù)庫(kù)系統(tǒng)適合于中小型規(guī)模的數(shù)據(jù)庫(kù)系統(tǒng)。3. 多層數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)N-Tier客戶(hù)機(jī)服務(wù)器結(jié)構(gòu) 后端服務(wù)器、中間端服務(wù)器(應(yīng)用服務(wù)器)和客戶(hù)機(jī):中間端服務(wù)器可以是多層的。中間端服務(wù)器可以管理一個(gè)或多個(gè)
5、獨(dú)立的數(shù)據(jù)庫(kù),為客戶(hù)機(jī)或前級(jí)服務(wù)器提供事務(wù)服務(wù)和數(shù)據(jù)預(yù)處理,承擔(dān)處理與數(shù)據(jù)庫(kù)服務(wù)器的交互工作。后端服務(wù)器是中間服務(wù)器的后臺(tái),管理多個(gè)中間服務(wù)器,提供整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的事務(wù)管理功能。6.1.2. SQL Server 2000與與Internet高度集成功能高度集成功能 SQL Server 2000可以作為Internet或內(nèi)部網(wǎng)服務(wù)器的后端數(shù)據(jù)庫(kù),它與Web服務(wù)器協(xié)作,為Web服務(wù)器和瀏覽器提供信息。SQL Server 2000通過(guò)Web站點(diǎn)共享數(shù)據(jù),它可以發(fā)布Web網(wǎng)頁(yè)和接收電子郵件,使用Web瀏覽器可以直接訪問(wèn)SQL Server 2000數(shù)據(jù)庫(kù)的數(shù)據(jù),且易于學(xué)習(xí)和使用。6.1.4 SQ
6、L Server 2000的數(shù)據(jù)庫(kù)對(duì)象的數(shù)據(jù)庫(kù)對(duì)象1. 數(shù)據(jù)庫(kù)的類(lèi)別(1) 物理數(shù)據(jù)庫(kù)和邏輯數(shù)據(jù)庫(kù)(按模式級(jí)別分) 物理數(shù)據(jù)庫(kù)由構(gòu)成數(shù)據(jù)庫(kù)的物理文件構(gòu)成。SQL Server 2000的一個(gè)物理數(shù)據(jù)庫(kù)中至少有一個(gè)數(shù)據(jù)庫(kù)信息文件和一個(gè)數(shù)據(jù)庫(kù)事務(wù)日志文件。物理數(shù)據(jù)庫(kù)由DBA(數(shù)據(jù)庫(kù)管理員)負(fù)責(zé)創(chuàng)建和管理。 邏輯數(shù)據(jù)庫(kù)是數(shù)據(jù)庫(kù)中用戶(hù)可視的表或視圖,用戶(hù)利用邏輯數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)對(duì)象,存儲(chǔ)或讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)。(2) 系統(tǒng)數(shù)據(jù)庫(kù)和用戶(hù)數(shù)據(jù)庫(kù)() 系統(tǒng)數(shù)據(jù)庫(kù)是由系統(tǒng)創(chuàng)建和維護(hù)的數(shù)據(jù)庫(kù)。系統(tǒng)數(shù)據(jù)庫(kù)中記錄著SQL Server 2000的配置情況、任務(wù)情況和用戶(hù)數(shù)據(jù)庫(kù)的情況等系統(tǒng)管理的信息,它類(lèi)似于我們常說(shuō)的數(shù)
7、據(jù)字典。 用戶(hù)數(shù)據(jù)庫(kù)是根據(jù)管理對(duì)象要求創(chuàng)建的數(shù)據(jù)庫(kù),用戶(hù)數(shù)據(jù)庫(kù)中保存著用戶(hù)直接需要的數(shù)據(jù)信息。2. SQL Server 2000的數(shù)據(jù)庫(kù)對(duì)象的數(shù)據(jù)庫(kù)對(duì)象(1) 表和視圖:表是在數(shù)據(jù)庫(kù)中存放的實(shí)際關(guān)系。視圖是為了用戶(hù)查詢(xún)方便或根據(jù)數(shù)據(jù)安全的需要而建立的虛表。(2) 角色:由一個(gè)或多個(gè)用戶(hù)組成的單元,也稱(chēng)職能組。一個(gè)用戶(hù)可以成為多個(gè)角色中的成員。(3) 索引:來(lái)加速數(shù)據(jù)訪問(wèn)和保證表的實(shí)體完整性的數(shù)據(jù)庫(kù)對(duì)象。的索引有群聚和非群聚索引兩種。群聚索引會(huì)使表的物理順序與索引順序一致,一個(gè)表只能有一個(gè)群聚索引;非群聚索引與表的物理順序無(wú)關(guān),一個(gè)表可以建立多個(gè)非群聚索引。(4) 存儲(chǔ)過(guò)程:通過(guò)Transac
8、t-SQL編寫(xiě)的程序。包括系統(tǒng)存儲(chǔ)過(guò)程和用戶(hù)存儲(chǔ)過(guò)程:系統(tǒng)存儲(chǔ)過(guò)程是由SQL Server 2000提供的,其過(guò)程名均以SP開(kāi)頭;用戶(hù)過(guò)程是由用戶(hù)編寫(xiě)的,它可以自動(dòng)執(zhí)行過(guò)程中安排的任務(wù)。(5) 觸發(fā)器:一種特殊類(lèi)型的存儲(chǔ)過(guò)程,當(dāng)表中發(fā)生特殊事件時(shí)執(zhí)行。觸發(fā)器主要用于保證數(shù)據(jù)的完整性。(6) 約束:約束規(guī)則用于加強(qiáng)數(shù)據(jù)完整性。3. 數(shù)據(jù)庫(kù)結(jié)構(gòu)(1) SQL Server 2000的三種物理文件1) 基本數(shù)據(jù)文件:基本數(shù)據(jù)文件用于容納數(shù)據(jù)庫(kù)對(duì)象,它使用.mdf作為文件擴(kuò)展名。2) 輔助數(shù)據(jù)文件:當(dāng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)較多時(shí)需要建立輔助數(shù)據(jù)文件。一個(gè)數(shù)據(jù)庫(kù)中可以沒(méi)有、也可以有一個(gè)或多個(gè)輔助數(shù)據(jù)文件。輔助數(shù)
9、據(jù)文件的擴(kuò)展名為.ndf。3) 日志文件:用于存放數(shù)據(jù)庫(kù)日志信息的文件。一個(gè)數(shù)據(jù)庫(kù)可以有一個(gè)或多個(gè)日志文件。日志文件的擴(kuò)展名為.ldf。(2) 數(shù)據(jù)庫(kù)文件的兩種組件1) 頁(yè):使用的最小數(shù)據(jù)單元,一頁(yè)可以容納8k的數(shù)據(jù)。共有8種頁(yè):數(shù)據(jù)頁(yè)、索引頁(yè)、文本/圖像頁(yè)、全局分配映射表頁(yè)、頁(yè)空閑空間、索引分配映射表頁(yè)、大容量更改映射表頁(yè)和差異更改映射表頁(yè)。2) 擴(kuò)展盤(pán)區(qū):擴(kuò)建表和索引的基本單位,一個(gè)擴(kuò)展盤(pán)區(qū)由8個(gè)相鄰頁(yè)的構(gòu)成。(3) 文件組:多個(gè)文件可以歸納成為一個(gè)文件組。6.1.5 SQL Server 2000的系統(tǒng)數(shù)據(jù)庫(kù)的系統(tǒng)數(shù)據(jù)庫(kù)1. Master數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)Master數(shù)據(jù)庫(kù)的主文件名為Mast
10、er.mdf,日志文件為Masterlog.ldf。Master中內(nèi)含許多系統(tǒng)表,用來(lái)跟蹤和記錄SQL Server相關(guān)信息。2. Msdb數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)Msdb的主文件名為Msdb.dbf,日志文件名為Msdb.ldf。Msdb由SQL Server企業(yè)管理器和代理服務(wù)器使用。Msdb中記錄著任務(wù)計(jì)劃信息、事件處理信息、數(shù)據(jù)備份及恢復(fù)信息和警告及異常信息。3. Model數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)Model數(shù)據(jù)庫(kù)的主文件是model.mdf,日志文件為model.ldf。Model數(shù)據(jù)庫(kù)是SQL Server 2000為用戶(hù)數(shù)據(jù)庫(kù)提供的樣板,新的用戶(hù)數(shù)據(jù)庫(kù)都以model數(shù)據(jù)庫(kù)為基礎(chǔ)。4. tempdb數(shù)據(jù)庫(kù)
11、數(shù)據(jù)庫(kù)tempdb的主文件名和日志文件名分別為tempdb.dbf和tempdb.ldf。tempdb是一個(gè)共享的工作空間,SQL Server 2000中的所有數(shù)據(jù)庫(kù)都可以使用它,它為臨時(shí)表和其他臨時(shí)工作提供了一個(gè)存儲(chǔ)區(qū)。6.2 SQL Server 2000的管理工具1. 查詢(xún)分析器編輯Transact-SQL,將其發(fā)送到服務(wù)器,并將執(zhí)行結(jié)果及分析顯示出來(lái)。通過(guò)測(cè)試查詢(xún)成本,判斷該查詢(xún)是否需要增加索引以提高查詢(xún)速度,并可以實(shí)現(xiàn)自動(dòng)建立索引的功能。 2. 導(dǎo)入和導(dǎo)出數(shù)據(jù)導(dǎo)入和導(dǎo)出數(shù)據(jù) 導(dǎo)入和導(dǎo)出數(shù)據(jù)通過(guò)一個(gè)向?qū)С绦颉皵?shù)據(jù)轉(zhuǎn)換服務(wù)(簡(jiǎn)稱(chēng)DTS)”實(shí)現(xiàn),其作用是使SQL Server 與任何OL
12、E DB、ODBC、JDBC或文本文件等多種不同類(lèi)型的數(shù)據(jù)庫(kù)之間實(shí)現(xiàn)數(shù)據(jù)傳遞。3. 服務(wù)管理器服務(wù)管理器 服務(wù)管理器(Service Manger)用于開(kāi)啟、暫停和停止SQL服務(wù)工作,同時(shí),也可以通過(guò)它設(shè)置服務(wù)是否自動(dòng)啟動(dòng)。 4. 客戶(hù)機(jī)網(wǎng)絡(luò)連接工具和服務(wù)器網(wǎng)絡(luò)連接工具客戶(hù)機(jī)網(wǎng)絡(luò)連接工具和服務(wù)器網(wǎng)絡(luò)連接工具 客戶(hù)機(jī)網(wǎng)絡(luò)連接工具用于設(shè)置本機(jī)作為服務(wù)器或客戶(hù)機(jī)所使用的缺省網(wǎng)絡(luò)鏈接庫(kù),并可為不支持缺省網(wǎng)絡(luò)庫(kù)的SQL服務(wù)器設(shè)置連接方式。服務(wù)器網(wǎng)絡(luò)連接工具用于設(shè)置本機(jī)作為服務(wù)器時(shí)允許的連接協(xié)議,以支持不同配置的客戶(hù)端。5. 聯(lián)機(jī)叢書(shū)聯(lián)機(jī)叢書(shū) 聯(lián)機(jī)叢書(shū)是SQL Server 2000為用戶(hù)提供的在線幫助功
13、能。在聯(lián)機(jī)叢書(shū)中,全面而詳細(xì)地介紹了有關(guān)SQL Server2000的功能、管理及開(kāi)發(fā)方法、TSQL語(yǔ)法等。6. 企業(yè)管理器企業(yè)管理器 企業(yè)管理器窗口的左邊是以樹(shù)形結(jié)構(gòu)組織的管理對(duì)象,右邊稱(chēng)為明細(xì)窗口,其內(nèi)容是是左邊選中對(duì)象的詳細(xì)內(nèi)容。企業(yè)管理器可以實(shí)現(xiàn)對(duì)管理對(duì)象的定義、改動(dòng)、刪除等各種操作。 7.事件探查器事件探查器 用于監(jiān)視與分析SQL Server活動(dòng)、服務(wù)器的網(wǎng)絡(luò)進(jìn)出流量或發(fā)出在SQL Server上的事件。事件探查器把一個(gè)操作序列保存為一個(gè).trc文件,然后在本機(jī)或其他機(jī)器上按原來(lái)的次序重新執(zhí)行一遍。 8. 在在IIS中配置中配置SQL XML支持支持 SQLServer 2000含
14、有SQL Server的IIS虛擬目錄管理器,通過(guò)它在IIS定義一個(gè)與SQL Server 2000實(shí)例相關(guān)的虛擬目錄。9. 分析管理器分析管理器 提供用戶(hù)界面以訪問(wèn)分析服務(wù)器及其元數(shù)據(jù)知識(shí)庫(kù)的控制臺(tái)應(yīng)用程序。實(shí)現(xiàn):管理分析服務(wù)器,鎖定被編輯的對(duì)象和它們的從屬對(duì)象;創(chuàng)建數(shù)據(jù)庫(kù)和指定數(shù)據(jù)源;生成并處理多維數(shù)據(jù)集;創(chuàng)建并處理數(shù)據(jù)挖掘模型;指定存儲(chǔ)選項(xiàng)并優(yōu)化查詢(xún)性能;管理安全性;瀏覽數(shù)據(jù)源、共享維度、安全角色和其它對(duì)象。 6.3 SQL Server 2000數(shù)據(jù)庫(kù)操作工具及其使用 6.3.1 用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫(kù)用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫(kù) 1) 選擇企業(yè)管理器。2) 選中需要在其上創(chuàng)建數(shù)據(jù)庫(kù)的服務(wù)器
15、 3) 選中“數(shù)據(jù)庫(kù)”文件夾,單擊右鍵,在彈出上選擇“新建數(shù)據(jù)庫(kù)”。在常規(guī)頁(yè)面中,輸入數(shù)據(jù)庫(kù)名,選擇SQL 服務(wù)器。 4) 選擇數(shù)據(jù)文件頁(yè)面,輸入數(shù)據(jù)文件屬性;再選擇事物日志頁(yè)面,輸入數(shù)據(jù)庫(kù)的日志文件屬性。5) 單擊“確定”按鈕,關(guān)閉對(duì)話框。6.3.2 在企業(yè)管理器中定義和管理表 1. 新建表選中數(shù)據(jù)庫(kù)中的表文件夾,擊鼠標(biāo)右健。在彈出的菜單中選擇新建表。隨后輸入表結(jié)構(gòu)對(duì)話框。 在對(duì)話框中單擊右鍵,出現(xiàn)一個(gè)彈出框。字段輸入完后,關(guān)閉建表對(duì)話框。在對(duì)話框中輸入表名,單擊“確定”按鈕。2. 定義表的完整性約束和索引(1) 定義索引和鍵(2) 定義表間關(guān)聯(lián)選擇“索引/鍵”頁(yè)面,選擇表頁(yè)面 6.4 Tr
16、ansact-SQL功能及實(shí)例 6.4.1 Transact-SQL的數(shù)據(jù)定義功能及實(shí)例定義功能及實(shí)例T-SQLT-SQL是是MicrosoftMicrosoft公司在公司在關(guān)系型數(shù)據(jù)庫(kù)管理系關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)SQL ServerSQL Server中的中的SQL-3SQL-3標(biāo)準(zhǔn)的實(shí)現(xiàn)標(biāo)準(zhǔn)的實(shí)現(xiàn), ,是是微軟微軟對(duì)對(duì)SQLSQL的擴(kuò)展的擴(kuò)展, ,具有具有SQLSQL的主要特點(diǎn)的主要特點(diǎn), ,同時(shí)增加了變同時(shí)增加了變量量, ,運(yùn)算符運(yùn)算符, ,函數(shù)函數(shù), ,流程控制流程控制和注釋等語(yǔ)言元素和注釋等語(yǔ)言元素, ,使得其功能更加強(qiáng)大使得其功能更加強(qiáng)大.T-SQL.T-SQL對(duì)對(duì)SQL Serv
17、er SQL Server 十分十分重要重要,SQL Server,SQL Server中使用圖形界面能夠完成的所中使用圖形界面能夠完成的所有功能有功能, ,都可以利用都可以利用T-SQLT-SQL來(lái)實(shí)現(xiàn)來(lái)實(shí)現(xiàn). .使用使用T-SQLT-SQL操操作時(shí)作時(shí), ,與與SQL ServerSQL Server通信的所有通信的所有應(yīng)用程序應(yīng)用程序都通過(guò)都通過(guò)向服務(wù)器發(fā)送向服務(wù)器發(fā)送T-SQLT-SQL語(yǔ)句來(lái)進(jìn)行語(yǔ)句來(lái)進(jìn)行, ,而與應(yīng)用程序而與應(yīng)用程序的界面無(wú)關(guān)的界面無(wú)關(guān). . 根據(jù)其完成的具體功能根據(jù)其完成的具體功能, ,可以將可以將T-SQLT-SQL語(yǔ)句語(yǔ)句分為四大類(lèi)分為四大類(lèi), ,分別為數(shù)據(jù)定
18、義語(yǔ)句分別為數(shù)據(jù)定義語(yǔ)句, ,數(shù)據(jù)操作語(yǔ)數(shù)據(jù)操作語(yǔ)句句, ,數(shù)據(jù)控制語(yǔ)句和一些附加的語(yǔ)言元素?cái)?shù)據(jù)控制語(yǔ)句和一些附加的語(yǔ)言元素. . 6.4 Transact-SQL功能及實(shí)例 6.4.1 Transact-SQL的數(shù)據(jù)定義功能及實(shí)例定義功能及實(shí)例1. 創(chuàng)建和管理數(shù)據(jù)庫(kù) CREATE DATABASE數(shù)據(jù)庫(kù)名 ON PRIMARY(NAME =邏輯數(shù)據(jù)文件名, FILENAME= 操作數(shù)據(jù)文件路徑和文件名 ,SIZE=文件長(zhǎng)度 ,MAXSIZE=最大長(zhǎng)度 ,F(xiàn)ILEROWTH=文件增長(zhǎng)率),n LOG ON (NAME=邏輯日志文件名, FILENAME= 操作日志文件路徑和文件名 ,SIZE=
19、文件長(zhǎng)度 ),n FOR RESTORE 子句中:PRIMARY指明主文件名;SIZE說(shuō)明文件的大小,數(shù)據(jù)庫(kù)文件最小為1MB,默認(rèn)值為3MB;FILEROWTH說(shuō)明文件的增長(zhǎng)率,默認(rèn)值為10%。FOR RESTORE子句說(shuō)明重建一個(gè)數(shù)據(jù)庫(kù),該重建的數(shù)據(jù)庫(kù)用于數(shù)據(jù)恢復(fù)操作。 6.4 Transact-SQL功能及實(shí)例 6.4.1 Transact-SQL的數(shù)據(jù)定義功能及實(shí)例定義功能及實(shí)例1. 創(chuàng)建和管理數(shù)據(jù)庫(kù) CREATE DATABASE數(shù)據(jù)庫(kù)名 ON PRIMARY(NAME =邏輯數(shù)據(jù)文件名, FILENAME= 操作數(shù)據(jù)文件路徑和文件名 ,SIZE=文件長(zhǎng)度 ,MAXSIZE=最大長(zhǎng)度
20、,F(xiàn)ILEROWTH=文件增長(zhǎng)率),n LOG ON (NAME=邏輯日志文件名, FILENAME= 操作日志文件路徑和文件名 ,SIZE=文件長(zhǎng)度 ),n FOR RESTORE 子句中:PRIMARY指明主文件名;SIZE說(shuō)明文件的大小,數(shù)據(jù)庫(kù)文件最小為1MB,默認(rèn)值為3MB;FILEROWTH說(shuō)明文件的增長(zhǎng)率,默認(rèn)值為10%。FOR RESTORE子句說(shuō)明重建一個(gè)數(shù)據(jù)庫(kù),該重建的數(shù)據(jù)庫(kù)用于數(shù)據(jù)恢復(fù)操作。 2. 定義表:定義表:CREATE TABLE表名表名(列名類(lèi)型列名類(lèi)型|AS表達(dá)式表達(dá)式 字段約束字段約束 , 記錄約束記錄約束)(1) 字段約束1) NOT NULL|NULL:不
21、允許或允許字段值為空。2) PRIMARY KEY CLUSTERED|NON CLUSTERED:字段為主碼并建立聚集或非聚集索引。3) REFERENCE參照表(對(duì)應(yīng)字段):定義被參照表及字段。4) DEFAULT缺省值:定義字段的缺省值。5) CHECK(條件):定義字段應(yīng)滿(mǎn)足的條件表達(dá)式。6) IDENTITY(初始值,步長(zhǎng)):定義字段為數(shù)值型數(shù)據(jù),并指出它的初始值和逐步增加的步長(zhǎng)值。 (2) 記錄約束 CONSTRAINT約束名約束式1) PRIMARY KEY CLUSTERED|NON CLUSTERED(列名組) 2) FOREIGN KEY(外碼) REFERENCES參照表
22、(對(duì)應(yīng)列): 3) CHECK(條件表達(dá)式):定義記錄應(yīng)滿(mǎn)足的條件。4) UNIQUE(列組):定義不允許重復(fù)值的字段組。 3. 基本表的維護(hù)(1)修改基本表1) 修改字段的定義。 ALTER TABLE表名 ALTER COLUMN列名新類(lèi)型 NULL|NOT NULL約束定義2) 增加字段和表約束規(guī)則。 ALTER TABLE表名ADD列定義|表約束定義 3) 刪除字段或約束規(guī)則。 ALTER TABLE表名DROPCONSTRAINT約束名|COLUMN列名4) 使約束有效或無(wú)效。 ALTER TABLE表名CHECK|NOCHECK CONSTRAINT ALL|約束名組(2) 刪除基
23、本表: DROP TABLE表名 4. 創(chuàng)建和管理索引 (1) 創(chuàng)建索引 CTEATE UNIQUE CLUSTERED|NON CLUSTERED INDEX索引名ON表名(索引列組)(2) 刪除索引 DROP INDEX表名.索引名 5. 創(chuàng)建和管理視圖 (1) 創(chuàng)建視圖創(chuàng)建視圖的語(yǔ)法為: CREATE VIEW視圖名(列名組) WITH ENCRYPTIOPN AS子查詢(xún) WITH CHECK OPTION (2) 刪除視圖 DROP VIEW 視圖名組 6. 創(chuàng)建和管理缺省(1)創(chuàng)建缺省 CREATE DEFAULT缺省名 (2) 綁定缺省 EXEC sp_bindfault 缺省名,
24、表名.列名系統(tǒng)存儲(chǔ)過(guò)程執(zhí)行時(shí)的格式為: EXEC存儲(chǔ)過(guò)程名參數(shù)組 如果參數(shù)是常量,則要加定界符 。 (3) 解除缺省EXEC sp_unbinddefault 缺省名,表名.列名 (4) 刪除缺省 DROP DEFAULT 缺省名組7. 創(chuàng)建和管理規(guī)則(1)創(chuàng)建規(guī)則 CREATE RULE規(guī)則名AS規(guī)則表達(dá)式規(guī)則表達(dá)式是WHERE子句中的有效表達(dá)式。 (2) 綁定規(guī)則 EXEC sp_bindrule 規(guī)則名,對(duì)象名(3) 解除規(guī)則EXEC sp_unbindrule 規(guī)則名,對(duì)象名(4) 刪除規(guī)則 DROP RULE規(guī)則名組 8. 創(chuàng)建和管理存儲(chǔ)過(guò)程 (1) 創(chuàng)建存儲(chǔ)過(guò)程和調(diào)用存儲(chǔ)過(guò)程 CR
25、EATE PROCEDURE過(guò)程名;版本號(hào) 參數(shù)名參數(shù)類(lèi)型=缺省值OUTPUTWITH RECOMPILE|ENCRYPTION| RECOMPILE,ENCRYPTION ASSQL語(yǔ)句組1) 版本號(hào)是可選的整數(shù),它用于將有相同名字的存儲(chǔ)過(guò)程編為不同的組。2) OUTPUT選項(xiàng)用于給調(diào)用者返回值。3) RECOMPILE為重編譯選項(xiàng)。它要求每次執(zhí)行都要對(duì)過(guò)程重編譯和優(yōu)化,并創(chuàng)建新的查詢(xún)計(jì)劃。4) ENCYPTION為加密選項(xiàng)。5) 參數(shù)前加“” 為局部變量,參數(shù)前加“”則說(shuō)明為全局變量。過(guò)程的調(diào)用語(yǔ)句為: EXEUTE過(guò)程名參數(shù)名=參數(shù)版本號(hào) (2) 刪除存儲(chǔ)過(guò)程 DROP PROCEDUR
26、E存儲(chǔ)過(guò)程名組 9. 創(chuàng)建和管理觸發(fā)器CREATE TRIGGER觸發(fā)器名ON表名 WITH ENCRYPTION FORDELETE,INSERT,UPDATE WITH APPEND NOT FOR REPLICATION ASSQL語(yǔ)句組1) WITH ENCRYPTION為加密選項(xiàng)。2) DELETE觸發(fā)器是當(dāng)對(duì)表執(zhí)行DELETE操作時(shí)刪除元組,將刪除的元組放入deleted表中。檢查delete表中的數(shù)據(jù),確定該如何處理。3) INSERT觸發(fā)器在對(duì)執(zhí)行插入數(shù)據(jù)操作時(shí),將插入表中的數(shù)據(jù)拷貝并送入inserted表中,根據(jù)inserted表中的值決定如何處理。4) UPDATE觸發(fā)器僅
27、在更新數(shù)據(jù)操作時(shí)將要被更新的原數(shù)據(jù)移入deleted表中,將更新后的數(shù)據(jù)備份送入inserted表中,對(duì)deleted和inserted表進(jìn)行檢查,并決定如何處理。5) NOT FOR REPLICATION項(xiàng)說(shuō)明當(dāng)一個(gè)復(fù)制過(guò)程在修改一個(gè)觸發(fā)器表時(shí),與該表相關(guān)聯(lián)的觸發(fā)器不能被執(zhí)行?!纠纠?-21】設(shè)有】設(shè)有member表(成員表)、表(成員表)、loan表(借書(shū)表)和表(借書(shū)表)和reservation表(預(yù)定書(shū)表)。通過(guò)觸發(fā)器定義未還圖書(shū)的成員不能從成員表中刪除,當(dāng)刪表(預(yù)定書(shū)表)。通過(guò)觸發(fā)器定義未還圖書(shū)的成員不能從成員表中刪除,當(dāng)刪除成員時(shí),該成員在的預(yù)定書(shū)表(除成員時(shí),該成員在的預(yù)定書(shū)
28、表(reservation表)中的記錄也將全部被刪除。表)中的記錄也將全部被刪除。 CREATE TRIGGER member_delete ON member FOR DELETE AS IF (SELECT COUNT(*) FROM loan,deleted WHERE loan.member_no=deleted.member_no)0 ROLLBACK TRANSACTION ELSE DELETE reservation FROM reservation,deleted WHERE reservation.member_no = deleted.member_no6.3.2 Tra
29、nsact-SQL的數(shù)據(jù)操縱功能及實(shí)例的數(shù)據(jù)操縱功能及實(shí)例1. 數(shù)據(jù)檢索語(yǔ)句的語(yǔ)句格式 SELECT查詢(xún)列 INTO新表名 FROM數(shù)據(jù)源 WHERE元組條件表達(dá)式 GROUP BY分組條件HAVING組選擇條件 ORDER BY排序條件 COMPUTER統(tǒng)計(jì)列組BY表達(dá)式(1) SELECT子句SELECT ALL|DISTINCT TOP數(shù)值PERCENT查詢(xún)列組查詢(xún)列為:查詢(xún)列:=*|表或視圖.*|列名或表達(dá)式AS列別名 |列別名=表達(dá)式1) ALL|DISTINCT:ALL為返回所有行,DISTINCT為僅顯示結(jié)果集中的惟一行。該項(xiàng)不選時(shí),ALL是缺省值。2) TOP數(shù)值:僅返回結(jié)果集
30、中的前數(shù)值行。如果有PENCENT,則返回結(jié)果集中的百分之?dāng)?shù)值行記錄。3) “*”:指明返回表和視圖的全部列。4)表或視圖.*:指明返回指定表或視圖的全部列。5)列別名:用來(lái)代替出現(xiàn)在結(jié)果集中的列名或表達(dá)式,別名可以在ORDER BY子句中出現(xiàn),但不能在WHERE、GROUP BY或HAVING子句中出現(xiàn)。(2) INTO子句和FROM子句 INTO子句將查詢(xún)結(jié)果添加到創(chuàng)建表中。INTO不能與COMPUTE 子句同時(shí)使用。如果創(chuàng)建表是臨時(shí)表,在表名前加“#”字符。 FROM語(yǔ)法格式為: FROM數(shù)據(jù)源組數(shù)據(jù)源的語(yǔ)法為: 數(shù)據(jù)源:=表名AS表別名WITH(表線索組) |視圖名AS視圖別名 |行集合函數(shù)AS別名 |嵌套的SELECT語(yǔ)句AS別名 |連接表連接表的語(yǔ)法為:連接表:=數(shù)據(jù)源連接類(lèi)型數(shù)據(jù)源ON連接條件 |數(shù)據(jù)源CROSSJOIN數(shù)據(jù)源|連接表連接類(lèi)型:=
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 長(zhǎng)春信息技術(shù)職業(yè)學(xué)院《自動(dòng)化實(shí)踐初步》2023-2024學(xué)年第一學(xué)期期末試卷
- 玉林師范學(xué)院《結(jié)構(gòu)模型設(shè)計(jì)制作》2023-2024學(xué)年第一學(xué)期期末試卷
- 市場(chǎng)波動(dòng)下的投資決策風(fēng)險(xiǎn)分析
- 財(cái)務(wù)戰(zhàn)略述職報(bào)告模板
- 保險(xiǎn)業(yè)務(wù)月度報(bào)告模板
- 保險(xiǎn)行業(yè)發(fā)展展望模板
- 實(shí)施環(huán)保生活講座
- 社團(tuán)招新簡(jiǎn)報(bào)
- 統(tǒng)編版六年級(jí)語(yǔ)文上冊(cè)寒假作業(yè)(十一)(有答案)
- 2025年四川省眉山市區(qū)縣高考數(shù)學(xué)一診模擬試卷(含答案)
- 制造樣品生產(chǎn)作業(yè)指導(dǎo)書(shū)
- 服務(wù)經(jīng)營(yíng)培訓(xùn)課件ppt 老客戶(hù)經(jīng)營(yíng)綜合版
- MT/T 199-1996煤礦用液壓鉆車(chē)通用技術(shù)條件
- GB/T 6144-1985合成切削液
- GB/T 10357.1-2013家具力學(xué)性能試驗(yàn)第1部分:桌類(lèi)強(qiáng)度和耐久性
- 第三方在線糾紛解決機(jī)制(ODR)述評(píng),國(guó)際商法論文
- 公寓de全人物攻略本為個(gè)人愛(ài)好而制成如需轉(zhuǎn)載注明信息
- 第5章-群體-團(tuán)隊(duì)溝通-管理溝通
- 腎臟病飲食依從行為量表(RABQ)附有答案
- 深基坑-安全教育課件
- 園林施工管理大型園林集團(tuán)南部區(qū)域養(yǎng)護(hù)標(biāo)準(zhǔn)圖例
評(píng)論
0/150
提交評(píng)論