1、一個文件的基本框架為:文件名、文件地址、文件大小、文件最大的大小、文件的增量(Filegrowth)。 2、文件有mdf、ndf、ldf 三種文件的區別。 3、文件組可以進行文件的管理 FileGroup 預設的文件組是 Primary 日誌文件無文件組的概念,存在Log文件中。 4、 alte ...
1、一個文件的基本框架為:文件名、文件地址、文件大小、文件最大的大小、文件的增量(Filegrowth)。
2、文件有mdf、ndf、ldf 三種文件的區別。
3、文件組可以進行文件的管理 FileGroup 預設的文件組是 Primary 日誌文件無文件組的概念,存在Log文件中。
4、 alter database 資料庫名 add fileGroup 文件組名 --添加文件組
(文件)
to filegroup 文件組名 --將文件添加到相關的文件組中去
實例:
alter database Stu_db2 add filegroup file_group --向資料庫中添加了新的文件組,file_group
go
alter database Stu_db2 add file
(
name=N'new_datafile',
filename='D:\SQl_Project\SQL_02\new_datafile.ndf',
size=3072kb,
maxsize=unlimited,
filegrowth=1024kb
)
to filegroup file_group --向文件組中添加文件new_datafile
5、修改文件組為預設的文件組;
alter database 資料庫名 modify filegroup 文件組名 default
6、修改文件組的名字
alter database 資料庫名 modify filegroup 文件組名 name =新的文件組名
7.1、設置文件組為只讀
alter database 資料庫名 modify filegroup 文件組名 Readonly
7.2:設置文件組為可讀寫;
alter database 資料庫名 modify filegroup 文件組名 readwrite
8、刪除文件組
alter database 資料庫名 remove filegroup 文件組名 *註意,刪除文件組要確保文件組中沒有數據文件。
9、查看資料庫的大小:
exec/execute sp_spaceused
10、查看數據中文件的詳細信息:
exec sp_helpdb 資料庫名
10_1_1、 sp_configure 使用sp_configure存儲過程可設置實例範圍內的配置選項
11、刪除資料庫;
drop database 資料庫名
12、修改資料庫的名字;
alter database 資料庫名 modify name=新的資料庫名
13、如果資料庫的空間不足,則可以通過以下的方法進行設置;
13.1.1、添加新的次要文件或次要的日誌文件
13.1.2、修改增量和文件大小:
實例; alter database 資料庫名
modify file
(
name=Onedb, --要修改的文件名
size=20, --文件大小
filegrowth=10% --文件的增量
)
14、收縮資料庫
14.1.1、直接修改增量和文件大小,參考以上,只是把文件大小改小了。
14.2.1、設置資料庫為自動收縮;
alter database 資料庫名 set auto_shrink on --不是最優的方法
14.3.1、DBCC shrinkdatabase('要收縮的資料庫名',可用空間的比例) 收縮資料庫
**註意,如果收縮的是當前使用的資料庫,則可以用0代替該資料庫名。
14.4.1、DBCC shrinkfile('要收縮的資料庫文件名',收縮文件大小) 收縮資料庫文件
15、資料庫快照(註意,只有企業版才支持快照的功能,標準版不支持)
15.1.1、創建資料庫快照;
create database 快照名稱
On
(
name=資料庫中的文件名,
filename='快照文件的存放地址'
),
( --如果資料庫中有多個文件的話,
要一一的將每個文件進行指定
)
as snapshot of 資料庫名
15.2.1、查詢資料庫快照:
select*from 資料庫快照名
15.3.1、數據快照是只讀的,所以不能為其添加文件和數據
15.3.1、用快照對資料庫進行恢復;
restore database 資料庫名 from database_snapshot='資料庫快照名'
16、分離資料庫:
exec sp_detach_db 資料庫名
17、附加資料庫;
create database 新的資料庫名
on
( filename='文件地址' --可以選擇的附加資料庫中的相關文件,建議全部附加),
(filename='')
for attach
18、如果附加的日誌文件無法使用,則可以指定系統重新構建新的日誌文件;
create database 資料庫名 on
(filename='資料庫文件所在的路徑')
for attach_rebuild_log
19、移動資料庫文件:
19.1.1、首先要講資料庫狀態設為offline
19.2.1、alter database 資料庫名 modify file(name=文件名,filename='新路徑')
19.3.1、再將資料庫的狀態設置為online
20.1.1、完全備份資料庫:
backup database 要備份的資料庫名 to disk='備份文件存放的位置' with name='備份集名稱',description='資料庫描述【資料庫完全備份/資料庫差異備份】',init --指定重寫所有備份集 noinit 不覆蓋現有的備份
20.2.1、差異備份資料庫;
back database 要備份的資料庫名 to disk ='備份文件存放的位置' with differential [differential表示這是差異備份] ,description='資料庫差異備份',init
21、還原資料庫:
第一步:還原完全備份的數據:
restore database 資料庫名 from disk='文件地址.bak' with file=1--備份設備中的第一個備份集,
norecovery , --不對資料庫執行任何操作
nounload, --不對資料庫做任何操作,不回滾相關的事物
replace, --覆蓋現有的資料庫
第二步:還原差異備份的數據:
restore database 資料庫名 from disk='文件地址' with file=1--備份設備中的第一個備份集,
norecovery , --不對資料庫執行任何操作
nounload, --不對資料庫做任何操作,不回滾未提交的事物
replace, --覆蓋現有的資料庫
註意;如果還有差異備份的話,還要將差異備份中的數據進行還原,否則還原的過程會出錯。
DDL:
1、在資料庫中創建表;
create table 表明(列名 類型, ...)
2、在表中插入數據:
insert into 表名(列名1,列名2.、、、) values(對應列的值)
3、為表中更新數據:
updata 表名 set 列名 where 條件。
4、刪除表/表中的數據【列/行】
delete 表名/表中數據
5、在sever sql 中變數分為局部變數和全局變數 ,聲明局部變數用declare,變數名稱的前面要有@字元。
6、全局變數: 見表格:全局變數。
7.1.1、其中數據類型要註意:decimal 和numeric
語法: decimal(p,s) --其中p:代表數的總位數,s:代表小數點後的小數位數。
numeric的語法與decimal類似的。
7.2.1、貨幣類型:
money/smallmoney
7.3.1、日期和時間數據類型; 見表格;
7.4.1、二進位數據類型;
binary[n] :如果沒有指定n的值,則預設為1
7.5.1:其他數據類型:
timestamp:行版本,在創建表的時候無需給出列名,插入數據的時候也不用管。