2013年5月11日 星期六

MS-SQL 已有建資料庫,欲把舊資料庫加入

/*資料庫.mdf檔,要把舊資料庫加進來,或是創一個新的資料庫也可用下列語法*/

CREATE DATABASE 資料庫名稱
ON
(FILENAME='C:\JAMES\123\練練.MDF'),    /*來源檔案位置*/
(FILENAME='C:\JAMES\123\練練_log.LDF') /*來源檔案位置*/
FOR ATTACH
EXEXUTE SP_ATTACH_DB 資料庫名稱  ,'來源檔案位置ex:c:\....\.mdf'


  • /*此方式只能增加16個ndf檔,超過要用另一個語法*/



MS-SQL 欲增加群別,放入指定資料庫語法

USE 練習;  /*欲增加群別,指定放入資料庫位置*/
ALTER DATABASE 練習 ADD FILEGROUP 行銷群;   /*新增一個群別給練習資料庫*/
ALTER DATABASE 練習 ADD FILE               /*加入檔案到行銷群群別*/
( 
  /*檔案名稱為行銷1,存檔位址為C:\james\行1.ndf*/   
  NAME='行銷1',FILENAME='C:\james\行1.ndf',
SIZE=7,
    MAXSIZE=UNLIMITED,FILEGROWTH=15%

) TO FILEGROUP 行銷群;




  • 上述T-SQL命令是要更新資料庫,並在資料庫中加入一個檔群組,且建立一個NDF檔後將其設定屬於行銷群。

MS-SQL 建資料庫語法


  • 下述範例綠色文字代表註解,非T-SQL語法。


CREATE DATABASE 資料庫名稱
ON PRIMARY
(
   NAME='檔名',FILENAME='欲存檔位置ex:C:\DATA\123.MDF',
   SIZE=大小MB,MAXSIZE=UNLIMITED(檔案上限無上限),FILEGROWTH=20%(成長空間)
),
FILEGROUP 群組名稱
(
  NAME='檔名',FILENAME='欲存檔位置ex:C:\DATA\1.NDF',
  SIZE=3,MAXSIZE=UNLIMITED,FILEGROWTH=20%
),
(
  NAME='檔名',FILENAME='欲存檔位置ex:C:\DATA\1.NDF',
  SIZE=3,MAXSIZE=UNLIMITED,FILEGROWTH=20%
),

LOG ON (紀錄檔存檔語法)
(
  NAME='檔案名稱',FILENAME='欲存檔位置ex:C:\DATA\1.LDF',
   SIZE=10,MAXSIZE=UNLIMITED,FILEGROWTH=20%
)
------>PRIMARY只能有一個,NDF可有可無,LDF必要一個也可多個


  • MAXSIZE = UNLIMITED 表示設定為資料庫檔不設定容量上限。
  • FILEGROWTH = 20%   表示當檔案超過SIZE所設定容量時,每次成長量。