網(wǎng)站設(shè)計(jì)思路最新行業(yè)動(dòng)態(tài)
目錄
1、數(shù)據(jù)庫(kù)的概念和操作
1.1 物理數(shù)據(jù)庫(kù)
1. SQL SERVER 2014的三種文件類型
2. 數(shù)據(jù)庫(kù)文件組
1.2 邏輯數(shù)據(jù)庫(kù)
2、數(shù)據(jù)庫(kù)的操作
2.1 T-SQL的語(yǔ)法格式
2.2?創(chuàng)建數(shù)據(jù)庫(kù)
2.3 修改數(shù)據(jù)庫(kù)
2.4 刪除數(shù)據(jù)庫(kù)
3、數(shù)據(jù)庫(kù)的附加和分離
1、數(shù)據(jù)庫(kù)的概念和操作
1.1 物理數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)在磁盤上以文件為單位存儲(chǔ),SQL Server 2014將數(shù)據(jù)庫(kù)映射為一組操作系統(tǒng)文件。
1. SQL SERVER 2014的三種文件類型
主數(shù)據(jù)文件(.mdf):每個(gè)數(shù)據(jù)庫(kù)有且僅有一個(gè)主數(shù)據(jù)文件.。
輔助數(shù)據(jù)文件(次數(shù)據(jù)文件,.ndf):0~N個(gè),主數(shù)據(jù)文件容量不足,存到輔助數(shù)據(jù)文件。
事務(wù)日志文件(.ldf):>=1個(gè),用于恢復(fù)數(shù)據(jù)庫(kù)的日志信息。
2. 數(shù)據(jù)庫(kù)文件組
文件的集合,簡(jiǎn)化數(shù)據(jù)的存放和管理。
主文件組(primary):主數(shù)據(jù)文件+未放入其他文件組的輔助數(shù)據(jù)文件。
用戶定義文件組:可以收集輔助數(shù)據(jù)文件。
1.2 邏輯數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)是存儲(chǔ)數(shù)據(jù)的容器。
組成數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),為數(shù)據(jù)庫(kù)對(duì)象,SQL Server 2014包括表,視圖,存儲(chǔ)過(guò)程,觸發(fā)器,函數(shù)等等。數(shù)據(jù)庫(kù)的創(chuàng)建+數(shù)據(jù)庫(kù)對(duì)象的創(chuàng)建,修改,刪除用的是DDL。
SQL Server 2014有兩類數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù)。
系統(tǒng)數(shù)據(jù)庫(kù)
1. master 數(shù)據(jù)庫(kù)
master 數(shù)據(jù)庫(kù)是SQL Server 2014中最重要的數(shù)據(jù)庫(kù),是整個(gè)數(shù)據(jù)庫(kù)服務(wù)器的核心,存放基本信息,應(yīng)定期備份。
2. model 數(shù)據(jù)庫(kù)
model 數(shù)據(jù)庫(kù)是SQL Server 2014中創(chuàng)建數(shù)據(jù)庫(kù)的模板。
3. msdb 數(shù)據(jù)庫(kù)
msdb 數(shù)據(jù)庫(kù)提供運(yùn)行SQL Server Agen任務(wù)的信息 SQL Server Agent是SQL Server中的一個(gè)Windows服務(wù),用來(lái)運(yùn)行制定的計(jì)劃任務(wù)。
4. tempdb 數(shù)據(jù)庫(kù)
tempdb 數(shù)據(jù)庫(kù)是SQL Server 2014中的一個(gè)臨時(shí)數(shù)據(jù)庫(kù),存放臨時(shí)變量和中間結(jié)果,關(guān)閉SQL Server 2014,tempdb數(shù)據(jù)庫(kù)內(nèi)容會(huì)被清空。
2、數(shù)據(jù)庫(kù)的操作
2.1 T-SQL的語(yǔ)法格式
{ }:里面的內(nèi)容必須寫。
[ ]:里面的內(nèi)容可選。
[,...n]:可寫多個(gè),用,分隔。
A | B | C:只能選一個(gè)。
< >:是一個(gè)語(yǔ)法塊。
接下來(lái)的代碼,
全大寫的單詞->關(guān)鍵字(關(guān)鍵字不區(qū)分大小寫,我是為了是代碼更清晰,才全大寫)
小寫的單詞->用戶自己定義
注意:數(shù)據(jù)庫(kù)中的字符串用單引號(hào)。'D:\data\student_data.mdf',路徑用? ?\? ?。
代碼是選中執(zhí)行。
2.2 T-SQL創(chuàng)建數(shù)據(jù)庫(kù)
CREATE DATABASE database_name
[ON [PRIMARY]
<filespec>[,...n]]
[,FILEGROUP filegroup_name
<filespec>[,...n]]
[LOG ON
<filespec>[,...n]]<filespec> ::={(
NAME = logic_file_name, -- 邏輯名是數(shù)據(jù)庫(kù)中文件名,沒(méi)有后綴名。
FILENAME = '', -- 文件的路徑,有后綴名。
[,SIZE = size[KB|MB|GB|TB] -- 默認(rèn)MB
[,MAXSIZE = {maxsize[KB|MB|GB|TB] | UNLIMITED}] -- 默認(rèn)MB
[,FILEGROWTH = growth_increment[KB|MB|GB|TB|%]]) -- 默認(rèn)MB
}
例:
-- 先在D盤創(chuàng)建data文件夾
create database student
on primary(
name = 'student_data',
filename = 'D:\data\student_data.mdf',
size = 5,
maxsize = 20,
filegrowth = 5%)
,filegroup fp1(
name = 'student_1',
filename = 'D:\data\student_1_data.ndf',
size = 2,
maxsize = 20,
filegrowth = 1
)
log on(
name = 'student_log',
filename = 'D:\data\student_log.ldf',
size = 3,
maxsize = 10,
filegrowth = 1)
2.3 T-SQL修改數(shù)據(jù)庫(kù)
一次只能執(zhí)行一個(gè)命令。
ALTER DATABASE database_name
{ADD FILE<filespec>[,...n][TO FILEGROUP filegroup_name] -- 一般添加數(shù)據(jù)文件
|ADD LOG FILE<filespec>[,...n] -- 添加日志文件
|REMOVE FILE logic_file_name -- 刪除數(shù)據(jù)或日志文件
|MODIFY FILE<filespec> -- 修改數(shù)據(jù)或日志文件
|ADD FILEGROUP filegroup_name -- 添加文件組
|REMOVE FILEGROUP filegroup_name -- 刪除文件組
|MODIFY NAME = new_dbname -- 修改數(shù)據(jù)庫(kù)名
}
也可以使用sp_renamedb old_name new_name,改數(shù)據(jù)庫(kù)名?。
如:修改文件的大小
-- 如:修改文件的大小
alter database student
modify file(
name = 'student_1',
filename = 'D:\data\student_1_data.ndf',
size = 8
)
2.4 T-SQL刪除數(shù)據(jù)庫(kù)
DROP DATABASE database_name[,...n]
3、數(shù)據(jù)庫(kù)的附加和分離
用于數(shù)據(jù)庫(kù)的備份或遷移操作。