SQLServer中数据库的创建
生活随笔
收集整理的這篇文章主要介紹了
SQLServer中数据库的创建
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1 數據庫分類
- 2 用戶數據庫文件的組成
- 3 數據庫的創建
- 3.1 創建一個主數據文件和一個日志文件
- 3.2 創建多個數據文件和日志文件
- 4 分離與附加數據庫
- 4.1 分離數據庫
- 4.2 附件數據庫
1 數據庫分類
數據庫的類型分為:系統數據庫和用戶數據庫。
2 用戶數據庫文件的組成
用戶數據庫物理文件的組成包括:數據庫文件和日志文件。
數據庫文件: .mdf(主數據文件)或.ndf(次要數據文件)。
日志文件: .ldf。
一個數據庫必須且只能包含一個mdf,但可以包含多個ndf和ldf(至少一個)。
3 數據庫的創建
3.1 創建一個主數據文件和一個日志文件
use master go --創建數據庫 create database StudentManageDB on primary (name='StudentManageDB_data',--數據庫文件的邏輯名filename='D:\DB\StudentManageDB_data.mdf',--數據庫物理文件名(絕對路徑)size=10MB,--數據庫文件初始大小filegrowth=5MB --數據文件增長量 ) --創建日志文件 log on (name='StudentManageDB_log',filename='D:\DB\StudentManageDB_log.ldf',size=5MB,filegrowth=2MB ) gogo是批處理的標志,表示SQL Server將這些SQL語句編譯為一個執行單元,提高執行效率。一般是將一些邏輯相關的業務操作語句放在同一批中,這完全由業務需求和代碼編寫者決定。
go是SQLServer的批處理命令,只有代碼編輯器才能識別并處理,編輯其他應用程序就不能使用該命令,由于每個批處理之間是獨立的,因此,在一個批處理出現錯誤時,并不會影響其他批處理中SQL代碼的運行。
3.2 創建多個數據文件和日志文件
use master go --判斷當前數據庫是否存在 if exists(select * from sysdatabases where name='StudentManageDB' ) drop database StudentManageDB go --創建數據庫 create database StudentManageDB on primary (name='StudentManageDB_data',--數據庫文件的邏輯名filename='D:\DB\StudentManageDB_data.mdf',--數據庫物理文件名(絕對路徑)size=10MB,--數據庫文件初始大小filegrowth=5MB --數據文件增長量 ), (name='StudentManageDB_data1',filename='D:\DB\StudentManageDB_data1.ndf',size=10MB,filegrowth=5MB ) --創建日志文件 log on (name='StudentManageDB_log',filename='D:\DB\StudentManageDB_log.ldf',size=5MB,filegrowth=2MB ), (name='StudentManageDB_log1',filename='D:\DB\StudentManageDB_log1.ldf',size=5MB,filegrowth=2MB ) godrop刪除數據庫后將不可恢復,使用要謹慎!
創建多個數據庫的另一個示例:
--首先要指向操作的數據庫use master go if exists(select * from sysdatabases where name='CourseManageDB') drop database CourseManageDB go --創建數據庫 create database CourseManageDB on primary (--數據庫的邏輯文件名(就是系統用的,必須唯一)name='CourseManageDB_data1',--數據庫物理文件名(絕對路徑)filename='D:\DB\CourseManageDB_data1.mdf',--主數據文件名--數據庫初始文件大小(一定要根據你的實際生產需求來定)size=20MB,--數據文件增值量(也要參考文件本身大小)filegrowth=1MB ) , ( name='CourseManageDB_data2', filename='D:\DB\CourseManageDB_data2.ndf',--次要數據文件名 size=20MB,filegrowth=1MB )log on (name='CourseManageDB_log', filename='D:\DB\CourseManageDB_log.ldf',--日志文件名 size=10MB,filegrowth=1MB ) go4 分離與附加數據庫
4.1 分離數據庫
在早期版本的數據庫系統中,當數據庫服務運行中通常情況下無法直接移動和復制數據庫文件。所謂的分離數據庫就是將正在使用的數據庫文件解除服務的限制。
語法如下:
exec sp_detach_db @dbname = 數據庫名稱4.2 附件數據庫
附加數據庫就是將指定位置的數據庫文件加入到數據庫文件中并運行。分離出去的數據庫只有附加后,用戶才能通過DBMS操作數據。
語法如下:
exec sp_attach_db @dbname=數據庫名稱, @filename1=數據庫主文件物理文件路徑, @filename2=數據庫日志文件物理文件路徑示例代碼:
--分離數據庫 exec sp_detach_db @dbname=StudentManageDB --附加數據庫方法1 exec sp_attach_db @dbname=StudentManageDB, @filename1='E:\StudentManageDB_data.mdf', @filename2='E:\StudentManageDB_log.ldf'--附加數據庫方法2 exec sp_attach_db @dbname=StudentManageDB, 'E:\StudentManageDB_data.mdf', 'E:\StudentManageDB_log.ldf'參考資料:
總結
以上是生活随笔為你收集整理的SQLServer中数据库的创建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算器初步添加消息响应
- 下一篇: SQLServer中的数据类型