數據庫的發展:
網絡數據庫——層次數據庫——關係數據庫
sqlserver的網絡協議:
1,命名管道2,Tcp/ip 3,共享內存4,VIA
系統數據庫:master:控制用戶數據庫和SQL Server操做,儲存用戶帳號,可配置的環境變量、系統錯誤消息等信息
model:新建用戶數據庫的模板原型
tempdb:臨時表以及其餘臨時的工做存儲須要
msdb:調度信息和做業歷史存儲區域
數據庫包含:主要文件,次要文件,事物文件
數據庫表的範式:
第一範式:數據庫表的每一列都是不可分個的基本數據項,同一列中不能有多個值。
第二範式:每個數據都有它惟一標示的字段
第三範式:一個數據庫表中不包含已在其餘表中已包含的出關鍵字信息的信息
建立數據庫:
create database mydb
on primary
(
name=mydb_dat,
filename='f:\data\mydb_dat.mdf',
size=5MB,
maxsize=20mb,
filegrowth=5%
),
filegroup dbfg
(
name=dbfg_dat1,
filename='f:\data\mydb_dat1.ndf',
size=5mb,
maxsize=20mb,
filegrowth=5%
)
log on
(
name=mydb_log,
filename='f:\data\mydb_log.ldf',
size=5MB,
maxsize=20mb,
filegrowth=5%
)
查看數據庫信息:sp_helpdb mydb
修改數據名:
alter database mydb modify name=yourdb
使用存儲過程修改數據庫名:
exec sp_dboption 'mydb','single',true
exec sp_renamedb 'mydb','yourdb'
exec sp_dboption 'mydb','single',false
修改數據大小:
alter database mydb
modify file
(
name=mydb_dat,
size=6MB,
filegrowth=1%
)
增長數據庫文件組
alter database mydb
add file
(
filename='f:\data\mydb_dat1.ndf',
name=mydb_dat1,
size=6MB,
filegrowth=1%
)
刪除數據庫:
drop database mydb
從sqlserver中刪除數據庫,但保持其數據和事務日誌文件(移除該數據庫)
exec sp_detach_db mydb
附加數據庫:exec sp_attach_db MyDB,'f:\data\mydb_dat.mdf'sql
備份文件:
backup database mydb to disk='f:\data\database_bak.dat' with name='backup'
備份完整數據庫:
1,建立備份設備
Exec sp_addumpdevice ‘disk’,’yourdbs’,’F:\data\20100823.dat’
2,調用備份設備備份數據庫
Backup database yourdb to yourdbs
3,執行存儲過程
exec sp_dropdevice 'yourdbs'
備份日誌文件
exec sp_addumpdevece 'disk','advworkslog','f:\data\database_bak.dat'
backup log adventureworks to advworkslog
exec sp_dropdevice advworkslog
還原數據庫:
restore database yourdb from disk='f:\data\database_bak.dat'
with replace
還原至指定的位置:
restore database yourdb from disk='D:\database_bak.dat' with file=2, replace
建立快照:
create database YoursDB
on
(
name='YouDb_db',
filename='D:\mydb.mdf'
)
as snapshot of YourDB
恢復數據快照:
restore database mydb from database_snapshot='YoursDB'數據庫