SQLServer創建數據庫詳解

1、創建數據庫介紹

在創建數據庫之前,需要先確定數據庫的名稱、所有者、大小、存儲該數據庫的文件和文件組。

數據庫所有者:創建數據庫的用戶。一般情況下,大多數產品對象由數據庫所有者擁有。

2、創建數據庫注意事項

  • 創建數據庫需要擁有CREATE DATABASE、CREATE ANY DATABASE或ALTER ANY DATABASE權限。

  • 創建數據庫的用戶將成為該數據庫的所有者。

  • 針對一個SQL Server實例,最多可以創建32767個數據庫。

  • 數據庫名稱必須遵循為標識符指定的規則。

  • 在創建新數據庫同時,model數據庫中的所有用戶定義對象都會復制到新創建的數據庫中。可以向model數據庫中添加任何通用的對象(如表、視圖、存儲過程和數據類型),然后在創建的數據庫可以將這些對象復制到新創建的數據庫當中。

3、創建數據庫的語法格式

語法格式如下:

      CREATE DATABASE database_name[ ON[ PRIMARY ] [ <filespec> [ ,...n ][ , <filegroup> [ ,...n ] ][ LOG ON { <filespec> [ ,...n ] } ]][ COLLATE collation_name ]][;]

參數說明:

database_name:數據庫名稱。

ON:指定以顯式定義方式指定存儲數據庫數據部分的數據文件。

PRIMARY:指定<filespec>列表中的主文件。在<filespec>項中的第一個文件將成為主文件。如果沒有指定PRIMARY則默認第一個文件將成為數據庫主文件。

LOG ON:指定存儲數據庫日志的日志文件。LOG ON后跟著以逗號分隔的用于定義日志文件的<filespec>項列表。不指定LOG ON,將自動創建一個日志文件,文件大小為該數據庫的所有數據文件大小總和的1/4或512 KB,取兩者之中的較大者。

COLLATE collation_name:指定數據庫的默認排序規則。排序規則名稱包括Windows排序規則、SQL排序規則名稱。未指定排序規則,則將SQL Server實例的默認排序規則分配為數據庫的排序規則。

<filespec>部分主要用于控制文件屬性,語法格式如下:

(NAME = logical_file_name ,FILENAME = 'os_file_name'[ , SIZE = size [ KB | MB | GB | TB ] ][ , MAXSIZE = { max_size [ KB | MB | GB | TB ] | UNLIMITED } ][ , FILEGROWTH = growth_increment [ KB | MB | GB | TB | % ] ]) [ ,...n ]

logical_file_name:指定文件的邏輯名稱。logical_file_name必須在數據庫中唯一,必須符合規定的標識符規則。

' os_file_name ':指定操作系統(物理)文件名稱。執行創建數據庫語句前,指定文件路徑必須存在。如果指定了UNC(通用命名約定)路徑,則無法設置SIZE、MAXSIZE和FILEGROWTH參數。

size:指定文件的初始大小。未指定主文件指定size,數據庫引擎將使用model數據庫中的主文件的大小。如果指定了輔助數據文件或日志文件,但未指定該文件的size,則數據庫引擎將以1 MB作為該文件的大小。

可以使用千字節(KB)、兆字節(MB)、千兆字節(GB)或兆兆字節(TB)后綴,默認單位為MB。

max_size:指定文件可增大到的最大值,可以使用KB、MB、GB和TB后綴,默認單位為MB。

UNLIMITED:指定文件可以增長到磁盤空間已滿。在SQL Server中,指定為不限制增長的日志文件的最大值為2 TB,而數據文件的最大值為16 TB。

growth_increment:指定每次需要新空間時為文件添加的空間量。growth_increment值不能超過MAXSIZE設置值。該值可以使用MB、KB、GB、TB或百分比(%)為單位指定。默認值為MB。growth_increment值為0時表明自動增長被關閉,不允許增加空間。

如果未指定FILEGROWTH,則數據文件的默認值為1 MB,日志文件的默認增長比例為10%,并且最小值為64 KB。

<filegroup>部分主要用于控制文件組屬性,語法格式如下:

?

    FILEGROUP filegroup_name [ DEFAULT ]<filespec> [ ,...n ]

filegroup_name:必須在數據庫中唯一,不能是系統提供的名稱PRIMARY和PRIMARY_LOG。

DEFAULT:指定文件組為數據庫中的默認文件組。

4、 創建數據庫示例

  1. 最簡單的創建數據庫示例

create database TestDB

會根據SQLServer默認設置(文件存儲位置、文件增加大小等)創建數據庫。

2.指定數據和事務日志文件的數據庫示例

 IF DB_ID (N'TestDB') is not null -- 判斷數據庫是否存在如果存在則先刪除DROP DATABASE TestDB GOCREATE DATABASE TestDBON( NAME = TestDB,-- 邏輯數據庫文件名FILENAME = 'D:\TestDB.mdf',SIZE = 10,MAXSIZE = 200,FILEGROWTH = 5 )LOG ON( NAME = TestDB_log,-- 邏輯數據庫日志文件名FILENAME = 'D:\TestDB_log.ldf',SIZE = 5MB,MAXSIZE = 50MB,FILEGROWTH = 5MB ) ;

3.指定多個數據文件和事務日志文件示例

  USE masterGO   IF DB_ID (N'TestDB') is not null -- 判斷數據庫是否存在如果存在則先刪除DROP DATABASE TestDB GOCREATE DATABASE TestDBONPRIMARY(NAME = TestDB1,FILENAME = 'd:\TestDB1.mdf',SIZE = 100MB,MAXSIZE = 200,FILEGROWTH = 20),( NAME = TestDB2,FILENAME = 'd:\TestDB2.ndf',SIZE = 100MB,MAXSIZE = 200,FILEGROWTH = 20)LOG ON(NAME = TestDB_log1,FILENAME = 'd:\TestDB_log1.ldf',SIZE = 30MB,MAXSIZE = 100,FILEGROWTH = 10),(NAME = TestDB_log2,FILENAME = 'd:\TestDB_log2.ldf',SIZE = 100MB,MAXSIZE = 500,FILEGROWTH = 50) ;

? ?

4.創建具有文件組的數據庫下面的語句將創建數據庫Sales,該數據庫具有以下文件組。

  USE masterGO   IF DB_ID (N'TestDB') is not null -- 判斷數據庫是否存在如果存在則先刪除DROP DATABASE TestDB GOCREATE DATABASE  TestDBON PRIMARY -- 數據庫主文件( NAME = TestDB1,FILENAME = 'd:\TestDB1.mdf',SIZE = 20,MAXSIZE = 100,FILEGROWTH = 10% ),( NAME = TestDB2,FILENAME = 'd:\TestDB2.ndf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5% ),FILEGROUP DBGroup1( NAME = TestDB3,FILENAME = 'd:\TestDB3.ndf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 ),( NAME = TestDB4,FILENAME = 'd:\TestDB4.ndf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 ),FILEGROUP DBGroup2( NAME = DB1_Group2,FILENAME = 'd:\DB1_Group2.ndf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 ),( NAME = DB2_Group2,FILENAME = 'd:\DB2_Group2.ndf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 )LOG ON( NAME = TestDB_log,FILENAME = 'd:\TestDB_log.ldf',SIZE = 50MB,MAXSIZE = 500MB,FILEGROWTH = 10MB ) ;

IT技術分享社區

個人博客網站:https://programmerblog.xyz

文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/270824.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/270824.shtml
英文地址,請注明出處:http://en.pswp.cn/news/270824.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Mac上IntelliJ IDEA設置類注釋和方法注釋帶作者和日期

在方法上標注注釋 1:idea左上角點擊Preferences 選擇Editor------Code Style----Live Templates 點擊右邊號 點擊Template Group,在彈框中添加一個分組 2:擊Template Group,在彈框中添加一個分組 3:選中新建的分組,點擊右邊號,選擇Live Template 4:在…

集群服務器分布式iis_Nginx+IIS分布式部署和負載均衡

標簽:1.IIS中部署2個網站創建2個網站,端口分別為9001、90022.下載Nginx可以進入Nginx官網進行下載,官網地址: http://nginx.org/,需要下載windows版的3.Nginx安裝3.1下載解壓到D盤根目錄下,打開conf目錄下的…

超級計算機的英語作文80字,英語作文_為什么這臺超級計算機如此快? (有聲) _滬江英語...

Why Is This Supercomputer So Superfast?Cray employees put the finishing touches on Titan at the Department of Energys Oak Ridge National Laboratory in Tennessee. The supercomputer may be the worlds fastest. Its designed to do 20 petaflops — or 20,000 tri…

HDU 1251 統計難題(Trie模版題)

統計難題 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Submission(s): 34909 Accepted Submission(s): 13109 Problem Description Ignatius最近遇到一個難題,老師交給他很多單詞(只有小寫字母組成,不會有重復的單詞出現)…

SQLServer數據庫收縮相關知識筆記

1、為什么要進行數據庫收縮?SQL Server 數據庫采取預先分配空間的方法來建立數據庫的數據文件或者日志文件,比如數據文件的空間分配了300MB,而實際上只占用了20MB空間,這樣就會造成磁盤存儲空間的浪費。可以通過數據庫收縮技術對數…

libvirt vnc花屏_centos6.5下VNC花屏解決方法

問題描述1、FusionCompute平臺搭建完成后,創建基于RHEL6.5 64bit版本的虛擬機,完成虛擬機初始安裝后,VNC界面出現花屏,無法登入Redhat桌面系統2、在創建虛擬機時,系統安裝向導配置了網絡,在花屏界面下可以通…

enum操作--獲取枚舉里的最大值

一個應用系統,如果程序里沒有任何enum的使用,我認為它的可讀性是有待商榷的。 求枚舉里的最大/最小枚舉值, 其實是對Array進行操作: enum EnumTest{ddd 2,eee} var arr1 Enum.GetValues(typeof(EnumTest)); //返回值是一個Array…

呂梁離石學校計算機專業在哪里,山西呂梁計算機大專學校有哪些太重技校告訴您...

山西呂梁計算機大專學校有哪些太重技校告訴您。選擇專業的***關鍵的因素是你自身的興趣,其他只能參考,如果你能準確的知道自己的興趣所在,未來的職業所選,那么只需要一招就可以吃遍天。相信我,一生為自己感興趣的事情奮…

網絡安全:六種常見的網絡攻擊手段

??作者主頁:IT技術分享社區 ??作者簡介:大家好,我是IT技術分享社區的博主,從事C#、Java開發九年,對數據庫、C#、Java、前端、運維、電腦技巧等經驗豐富。 ??個人榮譽: 數據庫領域優質創作者🏆&#x…

3種團隊分組適應項目_分組團隊競賽活動方案

為營造新年春節期間良好的經營氛圍,形成規范有效的服務流程,促進員工快樂積極向上工作,鑄造峽市娛樂行業名牌,經KTV 管理人員研究制定以下分組評比競賽方案:第一:分組辦法。1、KTV主管楊海軍、華磊、馮磊、…

Spring Security(18)——Jsp標簽

目錄 1.1 authorize 1.2 authentication 1.3 accesscontrollist Spring Security也有對Jsp標簽的支持的標簽庫。其中一共定義了三個標簽:authorize、authentication和accesscontrollist。其中authentication標簽是用來代表當前Authentication對象的&…

e4a html文本,E4A?怎么將剪貼版中的文本?粘貼到窗口的光標處啊?求個代碼

滿意答案百幻蝶V木桃2017.05.20采納率:49% 等級:8已幫助:1710人■如何打開剪貼板查看器 當您從某個程序剪切或復制信息時,該信息會被移動到剪貼板并保留在那里,直到您清除剪貼板或者您剪切或復制了另一片信息。“剪…

電腦技巧:七款U盤修復軟件

??作者主頁:IT技術分享社區 ??作者簡介:大家好,我是IT技術分享社區的博主,從事C#、Java開發九年,對數據庫、C#、Java、前端、運維、電腦技巧等經驗豐富。 ??個人榮譽: 數據庫領域優質創作者🏆&#x…

cdrx8如何批量導出jpg_Coreldraw/CDR X8 存低版本打開問題 – 數碼打印破圖 – Coreldraw/CDR軟件崩潰 – 漸變導位圖角度變了...

Coreldraw/CDR X8 存低版本打開問題 – 數碼打印破圖 – Coreldraw/CDR軟件崩潰 – 漸變導位圖角度變了Coreldraw/CDR X8 存低版本打開問題各位大神,小弟最近安裝了Coreldraw/CDR X8 ,在設計文件時,會遇到給文字設計套白邊,問題來…

[deviceone開發]-do_SlideListView的簡單示例

一、簡介 利用提供的SlideListVIew實現那種cell可以滑動露出底部按鈕的功能 主要組件:do_slidelistview 二、效果圖 三、相關討論 http://bbs.deviceone.net/forum.php?modviewthread&tid269 四、相關下載 https://github.com/do-project/code4do/tree/master/…

Git:Rebase和Merge之間的區別,看完這篇文章你就懂了!

社區中長期以來一直在爭論我們應該使用Merge還是Rebase。有人會說Merge更好,因為它保留了最完整的工作歷史。其他人則認為,Rebase變得更整潔,這使審閱者的生活更輕松,更高效。本文將解釋合并和重新設置之間的區別是什么&#xff0…

計算機b級英語翻譯,英語B級考試翻譯必備常用短句

英語B級考試翻譯必備常用短句1. Who would say like this?誰會這樣說呢?2. What time shall we leave?我們什么時候出發呢?3. We are going to play golf this Sunday.我們這個星期天要去打高爾夫球。4. Do you want to go out or stay at home?你想出…

weblogic概覽下的上下文根配置_Weblogic服務下獲取上下文路勁問題

問題描述:如果一個項目用weblogic部署的服務,在web_inf文件夾下只有web.xml文件,沒有配置weblogic.xml文件時,這是用類.class.getClassLoader().getResource("").getPath() 該方法獲取到的絕對路勁是如下:/…