SQL案例教學(xué)(圖文)_第1頁
SQL案例教學(xué)(圖文)_第2頁
SQL案例教學(xué)(圖文)_第3頁
SQL案例教學(xué)(圖文)_第4頁
SQL案例教學(xué)(圖文)_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章數(shù)據(jù)庫操作本章學(xué)習(xí)導(dǎo)航在進行數(shù)據(jù)管理時,相關(guān)的信息要存放到數(shù)據(jù)庫中。數(shù)據(jù)庫就像是一個容器,其中可以容納表、視圖、索引、存儲過程和觸發(fā)器等數(shù)據(jù)庫對象。應(yīng)用SQLServer2008進行數(shù)據(jù)管理之前,首先必須創(chuàng)建好數(shù)據(jù)庫,并指定數(shù)據(jù)庫的數(shù)據(jù)文件名和日志文件名以及數(shù)據(jù)庫的存放位置等屬性。本章學(xué)習(xí)導(dǎo)航本章任務(wù)描述任務(wù)編號子任務(wù)任務(wù)內(nèi)容任務(wù)1了解SQLServer系統(tǒng)數(shù)據(jù)庫的基本情況、用戶數(shù)據(jù)庫中的各種對象的信息、數(shù)據(jù)庫在操作系統(tǒng)文件夾中的存放任務(wù)1-1在SSMS中,查看本書樣例數(shù)據(jù)庫WebShop的組成任務(wù)1-2在SSMS中,查看SQLServer2008安裝成功后系統(tǒng)數(shù)據(jù)庫的情況任務(wù)1-3查看SQLServer2008安裝成功后系統(tǒng)數(shù)據(jù)庫master數(shù)據(jù)庫的邏輯名稱與對應(yīng)的物理文件的存儲情況任務(wù)2在SSMS中,創(chuàng)建用戶數(shù)據(jù)庫WebShop來對商城數(shù)據(jù)進行管理;在數(shù)據(jù)庫創(chuàng)建后,根據(jù)需要進行數(shù)據(jù)庫信息的修改、查看和刪除操作任務(wù)2-1在SSMS中,創(chuàng)建電子商城數(shù)據(jù)庫WebShop任務(wù)2-2在SSMS中,完成數(shù)據(jù)庫WebShop的修改任務(wù)2-3在SSMS中,查看數(shù)據(jù)庫WebShop的相關(guān)信息任務(wù)2-4在SSMS中,刪除數(shù)據(jù)庫WebShop任務(wù)2-5在SSMS中,由已創(chuàng)建好的數(shù)據(jù)庫WebShop生成創(chuàng)建數(shù)據(jù)庫的腳本本章任務(wù)描述任務(wù)編號子任務(wù)任務(wù)內(nèi)容任務(wù)3使用T-SQL語句創(chuàng)建保存電子商城的會員和商品等信息的用戶數(shù)據(jù)庫WebShop以便對商城數(shù)據(jù)進行管理、使用T-SQL語句進行數(shù)據(jù)庫信息的修改、查看和刪除操作任務(wù)3-1使用T-SQL語句創(chuàng)建WebShop數(shù)據(jù)庫任務(wù)3-2使用T-SQL語句對已創(chuàng)建好WebShop數(shù)據(jù)庫進行指定的修改任務(wù)3-3使用T-SQL語句更改數(shù)據(jù)庫選項任務(wù)3-4使用T-SQL語句更改數(shù)據(jù)庫名稱任務(wù)3-5使用T-SQL語句查看指定的數(shù)據(jù)庫或所有的數(shù)據(jù)庫信息任務(wù)3-6使用T-SQL語句刪除指定的數(shù)據(jù)庫任務(wù)3-7使用T-SQL語句將tempdb移動到新位置任務(wù)1

SQLServer2008安裝成功后,用戶需要了解系統(tǒng)數(shù)據(jù)庫的基本情況;用戶也可以了解用戶數(shù)據(jù)庫中的各種對象的信息;還需要了解數(shù)據(jù)庫在操作系統(tǒng)文件夾中是怎樣存放的。SQLSever2008數(shù)據(jù)庫一、數(shù)據(jù)庫概述【任務(wù)1-1】

啟動SQLServerManagementStudio,查看本書樣例數(shù)據(jù)庫WebShop的組成。

主題說明數(shù)據(jù)庫說明如何使用數(shù)據(jù)庫表示、管理和訪問數(shù)據(jù)聯(lián)合數(shù)據(jù)庫服務(wù)器說明實現(xiàn)聯(lián)合數(shù)據(jù)庫層的設(shè)計指南和注意事項表說明如何使用表存儲數(shù)據(jù)行和定義多個表之間的關(guān)系索引說明如何使用索引提高訪問表中數(shù)據(jù)的速度已分區(qū)表和已分區(qū)索引說明如何分區(qū)可使大型表和索引更易于管理以及更具可縮放性視圖說明各種視圖及其用途(提供其他方法查看一個或多個表中的數(shù)據(jù))存儲過程說明這些Transact-SQL程序如何將業(yè)務(wù)規(guī)則、任務(wù)和進程集中在服務(wù)器中DML觸發(fā)器說明作為特殊類型存儲過程的DML觸發(fā)器的功能,DML觸發(fā)器僅在修改表中的數(shù)據(jù)后執(zhí)行DDL觸發(fā)器說明作為特殊觸發(fā)器的DDL觸發(fā)器的功能,DDL觸發(fā)器在響應(yīng)數(shù)據(jù)定義語言(DDL)語句時激發(fā)一、數(shù)據(jù)庫概述主題說明登錄觸發(fā)器登錄觸發(fā)器將為響應(yīng)LOGON事件而激發(fā)存儲過程。與SQLServer實例建立用戶會話時將引發(fā)此事件。事件通知說明作為特殊數(shù)據(jù)庫對象的事件通知,事件通知可以向ServiceBroker發(fā)送有關(guān)服務(wù)器和數(shù)據(jù)庫事件的信息用戶定義函數(shù)說明如何使用函數(shù)將任務(wù)和進程集中在服務(wù)器中程序集說明如何在SQLServer中使用程序集部署以Microsoft.NETFramework公共語言運行時(CLR)中駐留的一種托管代碼語言編寫的(不是以Transact-SQL編寫的)函數(shù)、存儲過程、觸發(fā)器、用戶定義聚合以及用戶定義類型同義詞說明如何使用同義詞引用基對象;同義詞是包含架構(gòu)的對象的另一個名稱一、數(shù)據(jù)庫概述【提示】

一個SQLServer實例可以支持多個數(shù)據(jù)庫。每個數(shù)據(jù)庫可以存儲來自其他數(shù)據(jù)庫的相關(guān)數(shù)據(jù)或不相關(guān)數(shù)據(jù)。例如,SQLServer實例可以有一個數(shù)據(jù)庫用于存儲網(wǎng)站商品數(shù)據(jù),另一個數(shù)據(jù)庫用于存儲內(nèi)部員工的數(shù)據(jù)。

不能在master數(shù)據(jù)庫中創(chuàng)建任何用戶對象(例如表、視圖、存儲過程或觸發(fā)器)。master數(shù)據(jù)庫包含SQLServer實例使用的系統(tǒng)級信息(例如登錄信息和配置選項設(shè)置)。

表上有幾種類型的控制(例如約束、觸發(fā)器、默認值和自定義用戶數(shù)據(jù)類型),用于保證數(shù)據(jù)的有效性??梢韵虮碇刑砑勇暶餍砸猛暾?DRI)約束,以確保不同表中的相關(guān)數(shù)據(jù)保持一致。

表上可以有索引(與書中的索引相似),利用索引能夠快速找到行。數(shù)據(jù)庫還可以包含使用Transact-SQL或.NETFramework編程代碼的過程對數(shù)據(jù)庫中的數(shù)據(jù)執(zhí)行操作。這些操作包括創(chuàng)建用于提供對表數(shù)據(jù)的自定義訪問的視圖,或創(chuàng)建用于對部分行執(zhí)行復(fù)雜計算的用戶定義函數(shù)。二、系統(tǒng)數(shù)據(jù)庫【任務(wù)1-2】啟動SQLServerManagementStudio,查看SQLServer2008安裝成功后系統(tǒng)數(shù)據(jù)庫的情況。

三、文件和文件組【任務(wù)1-3】查看SQLServer2008安裝成功后系統(tǒng)數(shù)據(jù)庫master數(shù)據(jù)庫的邏輯名稱與對應(yīng)的物理文件的存儲情況。三、文件和文件組(一)數(shù)據(jù)文件

文件說明主要數(shù)據(jù)文件主要數(shù)據(jù)文件包含數(shù)據(jù)庫的啟動信息,并指向數(shù)據(jù)庫中的其他文件;用戶數(shù)據(jù)和對象可存儲在此文件中,也可以存儲在次要數(shù)據(jù)文件中;每個數(shù)據(jù)庫有一個主要數(shù)據(jù)文件,主要數(shù)據(jù)文件的擴展名默認為.mdf次要數(shù)據(jù)文件次要數(shù)據(jù)文件是可選的,由用戶定義并存儲用戶數(shù)據(jù);通過將每個文件放在不同的磁盤驅(qū)動器上,次要文件可用于將數(shù)據(jù)分散到多個磁盤上;另外,如果數(shù)據(jù)庫超過了單個Windows文件的最大值,可以使用次要數(shù)據(jù)文件,這樣數(shù)據(jù)庫就能繼續(xù)增長;次要數(shù)據(jù)文件的文件擴展名默認為.ndf事務(wù)日志文件事務(wù)日志文件保存用于恢復(fù)數(shù)據(jù)庫的日志信息;每個數(shù)據(jù)庫必須至少有一個日志文件,事務(wù)日志文件擴展名默認為.ldf三、文件和文件組(二)邏輯和物理文件名稱

【提示】SQLServer數(shù)據(jù)和日志文件可以保存在FAT或NTFS文件系統(tǒng)中。從安全性角度建議使用NTFS。可讀/寫數(shù)據(jù)文件組和日志文件不能保存在NTFS壓縮文件系統(tǒng)中。只有只讀數(shù)據(jù)庫和只讀次要文件組可以保存在NTFS壓縮文件系統(tǒng)中。默認情況下,數(shù)據(jù)和事務(wù)日志被放在同一個驅(qū)動器上的同一個路徑下。這是為處理單磁盤系統(tǒng)而采用的方法。但是,在實際應(yīng)用環(huán)境中,建議將數(shù)據(jù)和日志文件放在不同的磁盤上。三、文件和文件組(三)文件組

每個數(shù)據(jù)庫有一個主要文件組。此文件組包含主要數(shù)據(jù)文件和未放入其他文件組的所有次要文件??梢詣?chuàng)建用戶定義的文件組,用于將數(shù)據(jù)文件集合起來,以便于管理、數(shù)據(jù)分配和放置。SQLServer2008將數(shù)據(jù)庫映射為一組操作系統(tǒng)文件。數(shù)據(jù)和日志信息從不混合在相同的文件中,而且各文件僅在一個數(shù)據(jù)庫中使用。文件組是命名的文件集合,用于幫助數(shù)據(jù)布局和管理任務(wù),例如備份操作和還原操作。三、文件和文件組(四)數(shù)據(jù)文件頁

SQLServer2008數(shù)據(jù)文件中的頁按順序編號,文件的首頁以0開始。數(shù)據(jù)庫中的每個文件都有一個唯一的文件ID號。若要唯一標識數(shù)據(jù)庫中的頁,需要同時使用文件ID和頁碼。如下圖所示。

數(shù)據(jù)文件頁結(jié)構(gòu)數(shù)據(jù)文件頁三、文件和文件組(五)區(qū)

區(qū)是八個物理上連續(xù)的頁的集合,用來有效地管理頁。所有頁都存儲在區(qū)中。區(qū)是管理空間的基本單位。一個區(qū)是八個物理上連續(xù)的頁(即64KB)。這意味著SQLServer數(shù)據(jù)庫中每MB有16個區(qū)。為了使空間分配更有效,SQLServer不會將所有區(qū)分配給包含少量數(shù)據(jù)的表。SQLServer有兩種類型的區(qū):(1)統(tǒng)一區(qū),由單個對象所有。區(qū)中的所有8頁只能由所屬對象使用。(2)混合區(qū),最多可由八個對象共享。區(qū)中八頁的每頁可由不同的對象所有。三、文件和文件組混合區(qū)和統(tǒng)一區(qū)【課堂實踐1】操作要求:啟動“SQLServerManagementStudio”,查看有哪幾個系統(tǒng)數(shù)據(jù)庫。啟動“SQLServerManagementStudio”,查看temp數(shù)據(jù)庫的邏輯名稱。在操作系統(tǒng)文件夾中查看temp數(shù)據(jù)庫對應(yīng)的操作系統(tǒng)文件名。任務(wù)2在SQLServer2008的SQLServerManagementStudio中,為了保存電子商城的會員和商品等信息,需要創(chuàng)建用戶數(shù)據(jù)庫WebShop來對商城數(shù)據(jù)進行管理;在數(shù)據(jù)庫創(chuàng)建后,需要進行數(shù)據(jù)庫信息的修改、查看和刪除操作。使用SSMS管理數(shù)據(jù)庫【任務(wù)2-1】在SQLServer2008的“SQLServerManagementStudio”中,創(chuàng)建電子商城數(shù)據(jù)庫WebShop。

一、創(chuàng)建數(shù)據(jù)庫

【提示】

創(chuàng)建數(shù)據(jù)庫時,必須確定數(shù)據(jù)庫的名稱、所有者、大小以及存儲該數(shù)據(jù)庫的文件和文件組。數(shù)據(jù)庫名稱必須遵循SQLServer標識符規(guī)則。可以在創(chuàng)建數(shù)據(jù)庫改變其存儲位置,但一旦數(shù)據(jù)庫創(chuàng)建以后,存儲位置不能被修改。數(shù)據(jù)庫和事務(wù)日志文件的初始大小與為model數(shù)據(jù)庫指定的默認大小相同,主文件中包含數(shù)據(jù)庫的系統(tǒng)表。創(chuàng)建數(shù)據(jù)庫之后,構(gòu)成該數(shù)據(jù)庫的所有文件都將用零填充,以重寫磁盤上以前的刪除文件所遺留的現(xiàn)有數(shù)據(jù)。一、創(chuàng)建數(shù)據(jù)庫

在創(chuàng)建數(shù)據(jù)庫時最好指定文件的最大允許增長的大小,這樣做可以防止文件在添加數(shù)據(jù)時無限制增大,以至用盡整個磁盤空間。創(chuàng)建數(shù)據(jù)庫之后,建議創(chuàng)建一個master數(shù)據(jù)庫的備份。對于一個SQLServer實例,最多可以創(chuàng)建32,767個數(shù)據(jù)庫。model數(shù)據(jù)庫中的所有用戶定義對象都將復(fù)制到所有新創(chuàng)建的數(shù)據(jù)庫中??梢韵騧odel數(shù)據(jù)庫中添加任何對象(例如表、視圖、存儲過程和數(shù)據(jù)類型),以將這些對象包含到所有新創(chuàng)建的數(shù)據(jù)庫中。如果需要在數(shù)據(jù)庫節(jié)點中顯示新創(chuàng)建的數(shù)據(jù)庫,則需要在數(shù)據(jù)庫節(jié)點上單擊右鍵,再選擇【刷新】。一、創(chuàng)建數(shù)據(jù)庫

【任務(wù)2-2】在SQLServer2008的“SQLServerManagementStudio”中,完成數(shù)據(jù)庫WebShop的修改。

二、修改數(shù)據(jù)庫

修改的內(nèi)容包括以下幾個方面:

1、擴充或收縮分配給數(shù)據(jù)庫的數(shù)據(jù)或事務(wù)日志空間。2、添加或刪除數(shù)據(jù)和事務(wù)日志文件。3、創(chuàng)建文件組。4、創(chuàng)建默認文件組。5、更改數(shù)據(jù)庫名稱。6、更改數(shù)據(jù)庫的所有者。二、修改數(shù)據(jù)庫

【任務(wù)2-3】在SQLServer2008的“SQLServerManagementStudio”中,查看數(shù)據(jù)庫WebShop的相關(guān)信息。

三、查看數(shù)據(jù)庫

【任務(wù)2-4】在SQLServer2008的“SQLServerManagementStudio”中,刪除數(shù)據(jù)庫WebShop。

四、刪除數(shù)據(jù)庫

【提示】當不再需要數(shù)據(jù)庫,或?qū)?shù)據(jù)庫移到另一數(shù)據(jù)庫或服務(wù)器時,即可刪除該數(shù)據(jù)庫。數(shù)據(jù)庫刪除之后,文件及其數(shù)據(jù)都從服務(wù)器上的磁盤中刪除。一旦刪除數(shù)據(jù)庫,它即被永久刪除,并且不能進行檢索,除非使用以前的備份。在數(shù)據(jù)庫刪除之前備份master數(shù)據(jù)庫,因為刪除數(shù)據(jù)庫將更新master中的系統(tǒng)表。如果master需要還原,則從上次備份master之后刪除的所有數(shù)據(jù)庫都將仍然在系統(tǒng)表中有引用,因而可能導(dǎo)致出現(xiàn)錯誤信息。必須將當前數(shù)據(jù)庫指定為其他數(shù)據(jù)庫,不能刪除當前打開的數(shù)據(jù)庫。四、刪除數(shù)據(jù)庫

【任務(wù)2-5】在SQLServer2008的“SQLServerManagementStudio”中,收縮數(shù)據(jù)庫WebShop。五、收縮數(shù)據(jù)庫五、收縮數(shù)據(jù)庫【任務(wù)2-6】在SQLServer2008的“SQLServerManagementStudio”中,由已創(chuàng)建好的數(shù)據(jù)庫WebShop生成創(chuàng)建數(shù)據(jù)庫的腳本。

六、由已有數(shù)據(jù)庫生成創(chuàng)建數(shù)據(jù)庫的腳本

【提示】生成的腳本中包含了許多設(shè)置信息。其它對象(表和視圖等)生成腳本的方法與此相同,不再詳述。六、由已有數(shù)據(jù)庫生成創(chuàng)建數(shù)據(jù)庫的腳本

【課堂實踐2】操作要求:(1)啟動“SQLServerManagementStudio”,創(chuàng)建數(shù)據(jù)庫WebShop,并要求進行如下設(shè)置:數(shù)據(jù)庫文件和日志文件的邏輯名稱分別為:WebShop_data和WebShop_log;物理文件存放在E:\data文件夾中;數(shù)據(jù)文件的增長方式為“按MB”自動增長,初始大小為5MB,文件增長量為2MB;日志文件的增長方式為“按百分比”自動增長,初始大小為2MB,文件增長量為15%;(2)在操作系統(tǒng)文件夾中查看WebShop數(shù)據(jù)庫對應(yīng)的操作系統(tǒng)文件。(3)對WebShop數(shù)據(jù)庫進行以下修改:添中一個日志文件WebShop_log1;將主數(shù)據(jù)庫文件的增長上限修改為500MB;將主日志文件的增長上限修改為300MB。(4)刪除所創(chuàng)建的數(shù)據(jù)庫文件WebShop?!菊n堂實踐2】任務(wù)3使用T-SQL語句創(chuàng)建保存電子商城的會員和商品等信息的用戶數(shù)據(jù)庫WebShop以便對商城數(shù)據(jù)進行管理;在數(shù)據(jù)庫創(chuàng)建后,使用T-SQL語句進行數(shù)據(jù)庫信息的修改、查看和刪除操作。使用T-SQL管理數(shù)據(jù)庫一、創(chuàng)建數(shù)據(jù)庫(一)CREATEDATABASE語句格式CREATEDATABASE<數(shù)據(jù)庫文件名>[ON

<數(shù)據(jù)文件>]([NAME=<邏輯文件名>,]

FILENAME='<物理文件名>'

[,SIZE=<大小>]

[,MAXSIZE=<可增長的最大大小>]

[,FILEGROWTH=<增長比例>])[LOGON<日志文件>]([NAME=<邏輯文件名>,]

FILENAME='<物理文件名>'

[,SIZE=<大小>]

[,MAXSIZE=<可增長的最大大小>]

[,FILEGROWTH=<增長比例>])一、創(chuàng)建數(shù)據(jù)庫(二)SQLServerManagementStudio中使用T-SQL語句一、創(chuàng)建數(shù)據(jù)庫【提示】

如果在查詢語句編輯區(qū)域選定了語句,則對指定語句執(zhí)行檢查和執(zhí)行操作,否則執(zhí)行所有語句。在以后章節(jié)中的T-SQL的編寫和執(zhí)行的步驟與此相同。用戶編寫的T-SQL腳本可以以文件(.sql)形式保存,在需要時執(zhí)行。一、創(chuàng)建數(shù)據(jù)庫(三)使用CREATEDATABASE語句創(chuàng)建數(shù)據(jù)庫【任務(wù)3-1】使用T-SQL語句創(chuàng)建WebShop數(shù)據(jù)庫。

【完成語句1】使用默認方式創(chuàng)建數(shù)據(jù)庫。CREATEDATABASEWebShop【提示】

該方案以默認方式創(chuàng)建名為WebShop的數(shù)據(jù)庫。創(chuàng)建數(shù)據(jù)庫的過程分兩步完成:SQLServer使用model數(shù)據(jù)庫的副本初始化數(shù)據(jù)庫及其元數(shù)據(jù)。SQLServer使用空頁填充數(shù)據(jù)庫的剩余部分,除了包含記錄數(shù)據(jù)庫中空間使用情況以外的內(nèi)部數(shù)據(jù)頁?!就瓿烧Z句2】指定數(shù)據(jù)庫對應(yīng)的物理文件的存儲位置。CREATEDATABASEWebShopON(NAME=WebShop_dat,FILENAME=‘d:\data\WebShop.mdf’)創(chuàng)建名為WebShop的數(shù)據(jù)庫。同時指定WebShop_dat為主文件,大小等于model數(shù)據(jù)庫中主文件的大小。事務(wù)日志文件會自動創(chuàng)建,其大小為主文件大小的25%或512KB中的較大值。因為沒有指定MAXSIZE,文件可以增長到填滿所有可用的磁盤空間為止。一、創(chuàng)建數(shù)據(jù)庫【完成語句3】創(chuàng)建數(shù)據(jù)庫時指定數(shù)據(jù)庫文件和日志文件的屬性。CREATEDATABASEWebShopON(NAME=WebShop_dat,FILENAME='d:\data\WebShop_dat.mdf',SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME='WebShop_log',

FILENAME='d:\data\WebShop_log.ldf',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB)一、創(chuàng)建數(shù)據(jù)庫【提示】沒有使用關(guān)鍵字PRIMARY,則第一個文件(WebShop_dat)成為主文件。因為WebShop_dat文件的SIZE參數(shù)沒有指定MB或KB,因此默認為MB,以兆字節(jié)為單位進行分配。WebShop_log文件以兆字節(jié)為單位進行分配,因為SIZE參數(shù)中顯式聲明了MB后綴。一、創(chuàng)建數(shù)據(jù)庫(一)ALTERDATABASE語句格式基本語句格式:ALTERDATABASE<數(shù)據(jù)庫名稱>{ADDFILE<數(shù)據(jù)文件>|ADDLOGFILE<日志文件>|REMOVEFILE<邏輯文件名>|ADDFILEGROUP<文件組名>|REMOVEFILEGROUP<文件組名>|MODIFYFILE<文件名>|MODIFYNAME=<新數(shù)據(jù)庫名稱>|MODIFYFILEGROUP<文件組名>|SET<選項>}二、修改數(shù)據(jù)庫【任務(wù)3-2】使用T-SQL語句對已創(chuàng)建好WebShop數(shù)據(jù)庫進行指定的修改。

添加次要數(shù)據(jù)庫文件。ALTERDATABASEWebShopADDFILE(NAME=WebShop_dat2,FILENAME='d:\Data\WebShop_dat2.ndf',SIZE=5MB,MAXSIZE=100MB,FILEGROWTH=5MB)(二)使用ALTERDATABASE修改數(shù)據(jù)庫格式二、修改數(shù)據(jù)庫更改指定文件。ALTERDATABASEWebShopMODIFYFILE(NAME=WebShop_dat2,SIZE=20MB)刪除指定文件。ALTERDATABASEWebShopREMOVEFILEWebShop_dat2二、修改數(shù)據(jù)庫【任務(wù)3-3】使用T-SQL語句更改數(shù)據(jù)庫選項。

【提示】

系統(tǒng)存儲過程是指存儲在數(shù)據(jù)庫內(nèi),可由應(yīng)用程序(或查詢分析器)調(diào)用執(zhí)行的一組語句的集合,其目的是用來執(zhí)行數(shù)據(jù)庫的管理和信息活動。存儲過程詳細內(nèi)容可參閱“存儲過程”章節(jié)和“SQLServer聯(lián)機叢書”。執(zhí)行存儲過程中的EXEC關(guān)鍵字可選。本書中系統(tǒng)存儲過程的存儲過程的執(zhí)行與前面所述的T-SQL語句的執(zhí)行相同。不能在master或tempdb數(shù)據(jù)庫上使用sp_dboption。(三)使用存儲過程修改數(shù)據(jù)庫二、修改數(shù)據(jù)庫【任務(wù)3-4】使用T-SQL語句更改數(shù)據(jù)庫名稱。

基本語句格式:

sp_renamedb[當前數(shù)據(jù)庫名稱],[數(shù)據(jù)庫新名稱]二、修改數(shù)據(jù)庫【任務(wù)3-5】使用T-SQL語句查看指定的數(shù)據(jù)庫或所有的數(shù)據(jù)庫信息。

存儲過程sp_helpdb基本語句格式如下:

sp_helpdb[數(shù)據(jù)庫名稱]

【語句1】查看當前數(shù)據(jù)庫服務(wù)器中所有數(shù)據(jù)庫的信息。

sp_helpdb【語句2】查看當前數(shù)據(jù)庫服務(wù)器中

WebShop數(shù)據(jù)庫的信息。

sp_helpdbWebShop三、查看數(shù)據(jù)庫三、查看數(shù)據(jù)庫三、查看數(shù)據(jù)庫名稱含義name數(shù)據(jù)庫名稱db_size數(shù)據(jù)庫大小owner數(shù)據(jù)庫所有者(例如sa)dbid數(shù)據(jù)庫IDcreated數(shù)據(jù)庫創(chuàng)建的日期status以逗號分隔的值的列表,這些值是當前在數(shù)據(jù)庫上設(shè)置的數(shù)據(jù)庫選項的值name邏輯文件名fileid文件標識符filename操作系統(tǒng)文件名(物理文件名稱)filegroup文件所屬的組;為便于分配和管理,可以將數(shù)據(jù)庫文件分成文件組;日志文件不能作為文件組的一部分size文件大小maxsize文件可達到的最大值,此字段中的UNLIMITED值表示文件可以一直增大直到磁盤滿為止growth文件的增量,表示每次需要新的空間時給文件增加的空間大小usage文件用法;數(shù)據(jù)文件的用法是dataonly(僅數(shù)據(jù)),而日志文件的用法是logonly(僅日志)【語句3】查看所有數(shù)據(jù)庫的基本信息。

SELECT*FROMsys.databases三、查看數(shù)據(jù)庫【語句4】查看數(shù)據(jù)文件的信息。

SELECT*FROMsys.database_files三、查看數(shù)據(jù)庫【任務(wù)3-6】使用T-SQL語句刪除指定的數(shù)據(jù)庫。

刪除數(shù)據(jù)庫的基本語句格式如下:

DROPDATABASE<數(shù)據(jù)庫名稱>【完成語句】考慮到不再需要數(shù)據(jù)庫WebShop,現(xiàn)在要刪除數(shù)據(jù)庫WebShop。

DROPDATABASEWebShop四、刪除數(shù)據(jù)庫【任務(wù)3-7】使用DBCCSHRINKDATABASE收縮數(shù)據(jù)庫。

五、收縮數(shù)據(jù)庫和數(shù)據(jù)庫文件使用DBCCSHRINKDATABASE收縮數(shù)據(jù)庫: DBCCSHRINKDATABASE(數(shù)據(jù)庫名|數(shù)據(jù)庫ID|0[,target_percent][,{NOTRUNCATE|TRUNCATEONLY}])[WITHNO_INFOMSGS]<數(shù)據(jù)庫名稱>收縮WebShop數(shù)據(jù)庫,剩余可用空間10%,代碼如下:DBCCSHRINKDATABASE(WebShop,10)【任務(wù)3-8】使用DBCCSHRINKFILE收縮數(shù)據(jù)文件。

五、收縮數(shù)據(jù)庫和數(shù)據(jù)庫文件使用DBCCSHRINKFILE收縮數(shù)據(jù)文件: DBCCSHRINKFILE ( {文件名|文件ID} {[,EMPTYFILE] |[[,收縮后文件的大小][,{NOTRUNCATE| TRUNCATEONLY}]] } )

[WITHNO_INFOMSGS]【任務(wù)3-9】使用T-SQL語句將tempdb移動到新位置。

(1)確定tempdb數(shù)據(jù)庫的邏輯文件名稱以及在磁盤上的當前位置。

SELECTname,physical_name FROMsys.master_files WHEREdatabase_id=DB_ID('tempdb'); GO六、移動數(shù)據(jù)庫文件(2)使用ALTERDATABASE更改每個文件的位置。 USEmaster; GO ALTERDATABASEtempdb MODIFYFILE(NAME=tempdev,FILENAME= 'E:\SQLData\tempdb.mdf'); GO ALTERDATABASEtempdb MODIFYFILE(NAME=templog,FILENAME= 'E:\SQLData\templog.ldf')

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論