SQL Server從入門到精通(轉)

SQL Server數據庫結構和管理

今天阿豬和大家正式進入SQL Server的第二次學習,所有的學習筆記阿豬都是跟着《大型數據庫管理系統 技術、應用於實例分析》和結合(百度文庫)總結歸納出來的,在今後的講解中阿豬隻使用SQL命令來編寫,好的接下來那就一起學習共同進步

數據庫物理存儲結構

數據庫物理存儲是指數據庫的數據以什麼方式存儲在計算機磁盤上,又是怎樣在磁盤空間管理器管理下運行的。
1.1數據庫文件和文件組
數據庫在磁盤上是以文件爲單位存儲,由數據庫文件和事務日誌文件組成
  ×主數據庫文件:不許有一個。擴展名.mdf
  ×次數據庫文件:有的有有的沒有,還可能多個,擴展名.ndf
  ×事務日誌文件:包含恢復數據庫所需要的所有日誌信息,至少有一個日誌文件,也可多個,擴展名.ldf
1.數據庫文件組:多個文件歸納爲同一組,控制各個文件的存放位置,減輕單個磁盤驅動器的存儲負載,提高數據庫存儲效率
2.建立數據庫文件和文件組應注意:
  (1)數據文件不能跨文件組使用,數據文件和文件組不能跨數據庫使用
創建數據庫
  (2)日誌文件是獨立的,數據庫內的數據和日誌不能同時存入相同的文件或文件組
3.主文件組和此文件組

數據庫邏輯組織

系統數據庫
(1)master數據庫:由系統表組成,不允許修改
(2)tempdb數據庫:記錄用戶創建所有臨時表,臨時數據,重啓後爲空
(3)model數據庫:建立新數據庫的模板
(4)msdb數據庫:用於複製、作業調度等

數據庫的創立與管理

阿豬覺得這一部分很重要索引進行了深入學習查閱了百度文庫,來更詳細的講解沒有弄例題,大家就把課本上的多加練習一下

說明 :[]括起來的內容表示是可選的;
    [,…n]表示重複前面的內容
    <>表示在實際編寫語句時用相應的內容代替
    {}表示是必選的
    A|B表示AB只能選一個不能同時都選
數據庫創立:
 語法格式:
  CREATE DATABASE database_ name
  [ON [PRIMARY]  [[, …n]
   [, [, …n]] ]
  [LOG ON {[ , …n]]
  [FOR LOADIFOR ATTACH]
  ::=
  ( [NAME=logical_file name , ]
  FILENAME= ='os_ file_ name’
  [ , SIZE= =size]
  [,MAXSIZE= ={max_ sizeIUNLIMITED}]
  [ , FILEGROWTH=growth _increment] ) [, …n]
  ::=
  FILEGROUP filegroup _name [, …n]
備註:
  1.database_ name :新數據庫的名稱。數據庫名稱在 服務器中必須唯- - ,最長爲128個字符,並且要符合標 識符的命名規則。每個服務器管理的數據庫最多爲32767個。
  2.ON :指定存放數據庫的數據文件信息。列表用於定義主文件組的數據文件,列表用於定義用戶文件組及其中的文件。
  3.PRIMARY :用於指定主文件組中的文件。主文 件組的第一個由指定的文件是主文件。如果 不指定PRIMARY關鍵字,則在命令中列出的第- -個 文件將被默認爲主文件。
  4.LOG ON :指明事務日誌文件的明確定義。如果 沒有本選項,則系統會自動產生-個文件名前綴與數 據庫名相同,容量爲所有數據庫文件大小1/4的事務日 志文件。
  5. FOR LOAD :表示計劃將備份直接裝入新建的數據庫,主要是爲了和過去的SQL Server版本兼容。
  6.FOR ATTACH :表示在- -組已經存在的操作系統文件中建立-個新的數據庫。
  7.NAME :指定數據庫的邏輯名稱。
  8.FILENAME :指定數據庫所在文件的操作系統文件名稱和路徑,該操作系統文件名和NAME的邏輯名稱- – -對應。
  9.SIZE :指定數據庫的初始容量大小。如果沒有指定主文件的大小,則SQL Server默認其與模板數據庫中的主文件大小一致,其它數據庫文件和事務日誌文件則默認爲1MB。指定大小的數字size可以使用KB、MB、GB和TB後綴,默認的後綴爲MB。Size中不能使用小數,其最小值爲512KB ,默認值爲1MB。主文件的size不能小於模板數據庫中的主文件。
 10.MAXSIZE ;指定操作系統文件可以增長到的最大尺寸。如果沒有指定,則文件可以不斷增長直到充滿磁盤。
 11.FILEGROWTH :指定文件每次增加容量的大小,當指定數據爲0時,表示文件不增長。增加量可以確定爲以KB、MB作後綴的字節數或以%作後綴的被增加容量文件的百分比來表示。默認後綴爲MB.如果沒有指定FILEGROWTH ,則默認值爲10%.每次擴容的最小值爲64KB。

修改數據庫結構
語法格式:
  ALTER DATABASE database
  { ADD FILE < filespec> [, … n] [ TO FILEGROUP filegroup_ name ]
  | ADD LOG FILE < filespec> [ ,…n ]
  | REMOVE FILE logical_ file_ name
  | ADD FILEGROUP filegroup_ name
  |REMOVE FILEGROUP filegroup_ name
  | MODIFY FILE < filespec>
  | MODIFY NAME = new_ dbname
  |MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_nume }
  |SET < optionspec> [ ,…n ] [ WITH < termination> ]
  | COLLATE < collation_name>
  }
備註
  1.database是要更改的數據庫的名稱。
  2.ADD FILE 指定要添加文件。
  3.TO FILEGROUP指定要將指定文件添加到的文件組。
  4.filegroup_ name 是要添加指定文件的文件組名稱。
  5.ADD LOG FILE指定要將日誌文件添加到指定的數據庫。
  6.REMOVE FILE從數據庫系統表中刪除文件描述並刪除物理文件。只有在 文件爲空時才能刪除。
  7.ADD FILEGROUP指定要添加文件組。
  8.MODIFY FILE指定要更改給定的文件,更改選項包括 FILENAME、SIZE、 FILEGROWTH和MAXSIZE。-次只能更改這些屬性中的- -種。必須在 中指定NAME ,以標識要更改的文件。如果指定了 SIZE ,那麼新大小必須比文件當前大小要大。若要更改數據文件或日誌文件的邏輯名稱,應在 NAME選項中指定要改名的邏輯文件名稱,並在 NEWNAME選項中指定文件的新邏輯名稱。
  9.MODIFY FILEGROUP filegroup. name{ filegroup property | NAME = new_ filegroup name }指定要修改的文件組和所需的改動。如果指定filegroup_ name 和NAME =new_ filegroup. name,則將此文件組的名稱改爲 new_ filegroup_ name。如果指定filegroup. name和filegroup. property , 則表示給定文件組屬性將應用於此文件組。
   filegroup. property的值有:
  1.READONLY指定文件組爲只讀。不允許更新其中的對象。主文件組 不能設置爲只讀。只有具有排它數據庫訪問權限的用 戶才能將文件組標記爲只讀。
  2.READWRITE逆轉READONLY屬性。允許更新文件組中的對象。只 有具有排它數據庫訪問權限的用戶才能將文件組標記 爲讀/寫。
  3.DEFAULT將文件組指定爲默認數據庫文件組。只能有一個數據庫 文件組是默認的。CREATE DATABASE語句將主文 件組設置爲初始的默認文件組。如果在CREATE TABLE、ALTER TABLE或者CREATE INDEX語 包中沒有指定文件組,則新表及索引將在默認文件 組一中創建。
查看數據庫
語法:
SP_HELPDB 數據庫名
刪除數據庫
語法:
DROP DATABASE 數據庫名

好了今天這一章的內容就結束了,如果有錯誤的地方歡迎大家指出,來共同學習共同交流,如果覺得好給個小贊贊 謝謝啦

原文鏈接:https://blog.csdn.net/m0_46315852/article/details/104515758

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章