qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請?jiān)L問 http://qaseven.github.io/

          幾行代碼創(chuàng)建屬于你自己的SQL數(shù)據(jù)庫

          創(chuàng)建數(shù)據(jù)庫有多重方法,如可以使用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫,也可以使用向?qū)?chuàng)建數(shù)據(jù)庫。上面兩種方法操作都很簡單,但卻有一個(gè)很大的缺點(diǎn)就是他很難大規(guī)模重復(fù)。換句話說,如果你創(chuàng)建一個(gè)準(zhǔn)備重新分布到世界各地的數(shù)據(jù)庫,對于一個(gè)沒有經(jīng)驗(yàn)的用戶來說,應(yīng)付SQL企業(yè)管理器并建立數(shù)據(jù)庫并不是一件容易的事。于是為了解決我們上面所說的難題,用T-SQL語句創(chuàng)建數(shù)據(jù)庫的方法變應(yīng)運(yùn)而生。

            在講語法之前我先給大家介紹下什么是數(shù)據(jù)庫文件。數(shù)據(jù)庫文件說簡單點(diǎn)就是存儲(chǔ)我們所需要的數(shù)據(jù)庫的數(shù)據(jù),或者事務(wù)日志。就好比文件夾是為了存儲(chǔ)文件一樣。

            在SQL Sever中有如下三種類型的數(shù)據(jù)庫文件:

          數(shù)據(jù)庫文件類型

          描述

          主數(shù)據(jù)庫文件

                  是所有數(shù)據(jù)庫的起點(diǎn)。這些文件不僅包含數(shù)據(jù)庫用戶收集的信息,還包含了數(shù)據(jù)庫中所有其他文件的有關(guān)信息。每個(gè)數(shù)據(jù)庫都有一個(gè)主數(shù)據(jù)庫文件。主數(shù)據(jù)庫文件的擴(kuò)展名默認(rèn)并推薦使用.mdf

          輔數(shù)據(jù)庫文件

                  顧名思義它其實(shí)是那些你增加到數(shù)據(jù)庫中的其他任何數(shù)據(jù)庫文件。增加它們可以用來為數(shù)據(jù)庫增大容量。不是所有的數(shù)據(jù)庫都有輔數(shù)據(jù)庫文件,但是如果想要你的數(shù)據(jù)庫文件延伸到多個(gè)物理磁盤上,就需要有輔數(shù)據(jù)庫文件。它的擴(kuò)展名默認(rèn)使用.ndf

          日志文件

                  用來保存數(shù)據(jù)庫的事務(wù)日志。每個(gè)數(shù)據(jù)庫至少有一個(gè)日志文件。日志文件的擴(kuò)展名使用.ldf

            那接下來讓我們認(rèn)識Create Database語句的語法:

          CREATE DATABASE <database_name>
                On [primary]
                [<filespec> [,…n]  ]
                [,<filegroup> [,…n]  ]
          [LOG ON {<filespec> [,…n] }  ]
          [FOR LOAD |  FOR  ATTCH  ]

            上面幾句就是創(chuàng)建數(shù)據(jù)庫最基本的語法,很簡單吧。但是里面有些選項(xiàng)還是需要我們慢慢講來的。

            其中的兩個(gè)選項(xiàng)<filespec>和<filegroup>是什么意思呢?簡單的說他們分別代表了創(chuàng)建一個(gè)文件和一個(gè)文件組所需要的信息,可能很難懂吧,不用著急我們看下面它們兩個(gè)的語法。

          <filespec>::=
                             (   [NAME=logical_file_name,]
                                  FILENAME='os_file_name'
                                  [,SIZE=size]
                                  [,MAXSIZE={max_size | UNLIMITED}]
                                  [,FILEGROWTH=growth_increment])  [,…n]
                 <filegroupspec>::=
                                  FILEGROUP filegroup_name <filespec>  [,…n]

            在SIZE、MAXSIZE、FILEGROWTH中如果大小的單位是兆字節(jié)(MB),則該單位可以省略,也就是說兆字節(jié)是缺省單位。但其它的表示單位不可省略。

            沒暈吧(偷笑),沒關(guān)系我們接著來看個(gè)例子。在下面的例子里,你可以建立一個(gè)數(shù)據(jù)庫Test、一個(gè)數(shù)據(jù)庫文件Test_Data和一個(gè)日志文件Test_Log:

            Create Database Test

                   On primary

                   (      name=’Test_Data’,

                           Filename=’c:\mssql17\data\Test_Data.mdf’,

                          Size=10[MB],

                          Maxsize=50[MB],

                          Filegrowth=5[MB]   )

                   LOG ON

                   (      name=’Test_Log’,

                          Filename=’c:\mssql17\data\Test_Log.ldf’,

                          Size=5[MB],

                          Maxsize=25[MB],

                          Filegrowth=10%    )

                    GO

            在SQL 2000中的查詢分析器中執(zhí)行后,你會(huì)看到一下的結(jié)果:

            CREATE DATABASE 進(jìn)程正在磁盤 'Test_Data' 上分配 10.00 MB 的空間。

            CREATE DATABASE 進(jìn)程正在磁盤 'Test_Log' 上分配 5.00 MB 的空間。

            上面代碼括號中的部分即為<filespec>部分,是對創(chuàng)建的數(shù)據(jù)庫的說明。怎么樣,變的很簡單了吧。


          posted on 2012-08-06 10:45 順其自然EVO 閱讀(359) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

          <2012年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 临漳县| 塘沽区| 安西县| 格尔木市| 鹿泉市| 黄冈市| 凤冈县| 寻乌县| 达州市| 乳源| 苏尼特左旗| 通州市| 福建省| 舞阳县| 镇康县| 邛崃市| 玉溪市| 宝鸡市| 冕宁县| 都昌县| 喀喇沁旗| 娱乐| 射洪县| 泰来县| 延庆县| 施甸县| 建瓯市| 历史| 潮安县| 新绛县| 延津县| 且末县| 磐安县| 兴仁县| 拜城县| 朝阳市| 湘乡市| 四会市| 彝良县| 武隆县| 雅江县|