SQL Server語法學習 一
建立一個新的資料庫
方法一:右鍵'資料庫'選擇'新建資料庫',輸入資料庫的名字即可
方法二:使用create database 語句建立資料庫
CREAT DATABASE 資料庫名
[ON
[PRIMARY]
[<資料檔案選項>...
[,<資料檔案組選項>...]
[LOG ON{<日誌檔案選項>...}]]
[COLLATE 排序名]
...
]
2.資料檔案的語法格式:
<資料檔案選項> = {( NAME =邏輯檔名, FILENAME ={‘作業系統檔名’|'儲存路徑'} [,SIZE =檔案初始容量] [,MAXSIZE ={檔案最大容量|UNLIMITED}] [,FILEGROWTH =檔案增量[容量|%]] ) }
說明:
a.邏輯檔名:資料庫使用的名稱;
b.作業系統檔名:作業系統在建立物理檔案時使用的路徑和檔名。
c.檔案初始容量:對於主檔案,若不指出大小,則預設為model資料庫主檔案的大小,對於輔助資料檔案,自動設定為3MB;
d.檔案最大容量:指定檔案的最大大小。UNLIMITED關鍵字表示檔案大小不受限制,但實際上受磁碟可用空間的限制。如果不指定MAXSIZE選項,則檔案增長到磁碟空間滿;
e.檔案增量:有百分比和容量值兩種格式,前者如10%,即每次在原來空間大小的基礎上增長10%;後者如5MB,即每次增長5MB,而不管原來空間大小是多少。
3.資料檔案組選項的語法格式:
<資料檔案組選項>= { FILEGROUP 檔案組名[DEFAULT] <檔案選項>... }
a.DEFAULT關鍵詞:指定命名檔案組為資料庫中的預設檔案組。
b.<檔案選項>:用於指定屬於該檔案組的檔案的屬性,其格式描述和資料檔案的屬性描述相同。
示例:
CREATE DATABASE test1 ON ( NAME = "test1_data", FILENAME = "D:\SQLServer\DATA\test1.mdf", SIZE = 5MB, MAXSIZE = 50MB, FILEGROWTH = 10% ) LOG ON ( NAME = "test1_log", FILENAME = "D:\SQLServer\DATA\test1.ldf", SIZE = 2MB, MAXSIZE = 5MB, FILEGROWTH = 1MB );
4.修改資料庫 :ALTER DATABASE
ALTER DATABASE 資料庫名
{
ADD FILE<檔案選項>...[TO FILEGROUP 檔案組名] /*在檔案組中增加資料檔案*/
|ADD LOG FILE<檔案選項>... /*增加日誌檔案*/
|REMOVE FILE 邏輯檔名 /*刪除資料檔案*/
|ADD FILEGROUP 檔案組名 [...] /*增加檔案組*/
|REMOVE FILEGROUP 檔案組名 /*刪除檔案組*/
|MODIFY FILE<檔案選項> /*更改檔案屬性*/
|MODIFY NAME = 新資料庫名 /*資料庫更名*/
|MODIFY FILEGROUP 檔案組名
{ <檔案組可更新選項>
|DEFAULT
|NAME = 新檔案組名
} /*更改檔案組屬性*/
|SET<屬性選項>...[WITH<終止>] /*設定資料庫屬性*/
|COLLATE 排序名 /*指定資料庫排序規則*/
}
說明:
a.ADD FILE子句:向資料庫新增資料檔案,<檔案選項>給出檔案的屬性,結構參見CREATE DATABASE語法說明。關鍵字TO FILEGROUP指出了新增的資料檔案所在的檔案組名,若省略,則為主檔案組。
b.ADD LOG FIL子句:向資料庫新增日誌檔案,<檔案選項>給出日誌檔案的屬性。
c.REMOVE FILE子句:從資料庫中刪除資料檔案,被刪除的資料檔案由其中的引數“邏輯檔名”給出。當刪除一個數據檔案時,邏輯檔案與物理檔案全部被刪除。
d.ADD FILEGROUP子句:向資料庫中新增檔案組,被新增的檔案組名由引數“檔案組名”給出。
e.REMOVE FILEGROUP子句:刪除檔案組,被刪除的檔案組名由引數“檔案組名”給出。
f.MODIFY FILE子句:修改資料檔案的屬性,被修改檔案的邏輯名由<檔案選項>的NAME選項給出,可以修改的檔案屬性包括FILENAME、SIZE、MAXSIZE和FILEGROWTH,但是要注意,一次只能修改其中的一個屬性。修改檔案大小時,修改後的大小不能小於當前檔案的大小。
g.MODIFY NAME子句:更改資料庫名,新的資料庫名由引數“新資料庫名”給出。
h.MODIFY FILEGROUP子句:用於修改檔案組的屬性。“檔案組名”為要修改的檔案組名稱。<檔案組可更新選項>設定檔案組的讀寫許可權。DEFAULT選項表示將預設資料庫檔案組改為指定檔案組。NAME選項用於將檔案組名改成新檔案組名。
i.SET子句:用於設定資料庫的屬性,<屬性選項>中指定了要修改的屬性
<檔案組可更新選項>::=
{
{READONLY|READWRITE}
|{READ_ONLY|READ_WRITE}
}
j.READONLY和READ_ONLY選項:用於將檔案組設為只讀。
k.READWRITE 和READ_WRITE選項:將檔案組設為讀/寫模式。
示例:
增:
ALTER DATABASE test1
ADD FILE
(
NAME = "test1bak",
FILENAME = "D:\SQLServer\DATA\test1bak.ndf",
SIZE = 10MB,
MAXSIZE = 50MB,
FILEGROWTH = 5%
)
刪:
ALTER DATABASE test1
REMOVE FILE test1bak
GO
改:
ALTER DATABASE test1
MODIFY FILE
(
NAME = "test1_data",
MAXSIZE = 100MB, /*將主資料檔案的最大容量改為100MB*/
FILEGROWTH = 5MB /*將主資料檔案的增長方式改為按5MB增長*/
)
GO
新增檔案陣列:為資料庫test1新增檔案組fgroup,併為此檔案組新增兩個大小均為10MB的資料檔案。
ALTER DATABASE test1
ADD FILEGROUP fgroup
GO
ALTER DATABASE test1
ADD FILE
(
NAME = "test1_data2",
FILENAME = "D:\SQLServer\DATA\test1data2.ndf",
SIZE = 10MB
),
(
NAME = "test1_data3",
FILENAME = "D:\SQLServer\DATA\test1data3.ndf",
SIZE = 10MB
)
TO FILEGROUP fgroup
GO
5.刪除資料庫 DROP DATABASE
DROP DATABASE 資料庫名...
GO
6.資料庫快照 AS SNAPSHOT
CREATE DATABASE 資料庫快照名
ON(
NAME =邏輯檔名,
FILENAME ='作業系統檔名'
)[,...]
AS SNAPSHOT OF 源資料庫名
a.資料庫快照名:資料庫快照的名稱,這個名稱在SQL Server例項中必須唯一且符合識別符號規則。
b.ON子句:若要建立資料庫快照,要在源資料庫中指定檔案列表。若要使快照工作,則必須分別指定所有資料檔案。其中,NAME是邏輯檔名,FILENAME是作業系統檔名(包含路徑)。日誌檔案不允許用於資料庫快照。
c.AS SNAPSHOT OF子句:指定要建立的快照為“源資料庫名”指定的資料庫的快照。資料庫快照必須與源資料處於同一例項中。
示例:
CREATE DATABASE test1_s1
ON
(
NAME=test1,
FILENAME='D:\SQLServer\DATA\test1_s1.mdf'
)
AS SNAPSHOT OF test1
GO
本文選自知乎大佬:半道出家的lv
https://www.zhihu.com/people/ban-dao-chu-jia-de-lv
文章地址:
https://zhuanlan.zhihu.com/p/101213316
注:此篇文章為轉載文章,其目的在於多處備份、學習、交流,以便於不時之需,如作者有異議,請聯絡刪除! ! !