database
create database zhubenxi
on primary
(
name=zhum,
filename=N'H:\database\zhum.mdf',
size=10MB,
maxsize=unlimited,
filegrowth=10%
),
(
name=zhuone,
filename=N'H:\database\zhuone.ndf',
size=3MB,
maxsize=100MB,
filegrowth=1MB
)
,
filegroup zhutwogroup
(
name=zhugroup
,filename=N'H:\database\zhugroup.ndf'
,size=3MB,
filegrowth=1MB
)
log on
(
name=zhulog
,filename=N'H:\database\zhulog.ldf'
,size=3MB
,maxsize=20MB,
filegrowth=1MB
)
//
需要要移动前 复制到指定目录H:\database\zhum.mdf
alter database zhubenxi set offline
alter database zhubenxi
modify file(name=zhum,filename=N'H:\database\zhum.mdf')
alter database zhubenxi set online
//////
add:
alter database stu_db2
add file
(
name='one'
,filename=N'e:\one.ndf'
,size=23MB
,fileGrowth=234MB
)
modify:
alter database stu_db2 modify file
(
name='one' ,newName='newone'
)
remove:
alter database stu_db2
remove file newone
文件组:
alter DATABASE STU_db2
add filegroup Two_fg
go
alter database stu_db2
add file
(
name='new_file'
,filename=N'e:\new_file.ndf'
,size=234MB
,FILEGROWTH=798MB
)
To filegroup Two_fg
go
设置默认文件组
alter database stu_db2
modify filegroup Two_fg default
修改名字
alter database stu_db2
modify filegroup Two_fg name=User_fg
设置文件组中文件全部为只读
alter database stu_db2
modify filegroup User_fg readonly
删除:
先删除逻辑名(new_datafile .ndf),再删文件组
alter database stu_db2
remove file new_datafile --文件逻辑名
alter database stu_db2
remove filegroup User_fg
.mdf 主要文件 .ndf 次要文件 .ldf 日志文件
select * from sysdatabases where dbid = '' or name=''
select databasepropertyex('stu_db2','isautoshrink')
exec sp_spaceused //查看数据库的大小
exec sp_helpdb stu_db2
设置数据库单用户模式:
alter database stu_db3
set single_user with no_wait
设置数据库多用户模式:
alter database stu_db3
set multi_user with no_wait
收缩数据库:
DBCC shrinkdatabase('stu_db2',20)//只保留20% 可用空间
数据库快照:
create database test_new
on
(
name=test --源数据库文件的逻辑名
,filename='e:\test_new.thc' 有多少个逻辑文件就创建多少个,日志文件不能创建
)
as snapshot of tests --源数据库名
有多少个逻辑文件就创建多少个
分离数据库
exec sp_detach_db stu_db2
附加数据库:
create database studb3 on
(filename='e;\a.mdf')
(filename='e;\a.ldf')
(filename='e;\a.ndf')
(filename='e;\a.ndf')
for attach
移动数据库文件:
alter database stu_db2 set offline
alter database stu_db2
modify file(name=stu_db2_a,filename='d:\newPath.ndf')
alter database stu_db2 set online
备份数据库:
(完全备份)
backup database stu_db2
to disk='e:\db.bak'
with name='aaa' ---备份集名称
,description='bbb' --备注
,noinit --指定重写所有备份集 noint,不覆盖现有
差异备份
backup database stu_db2
to disk='e:\db_cy.bak'
with differential,
description='ccc'
,init --指定覆盖现有备份
校验备份文件:
restore filelistonly from disk='e:\aaa.bak ' with file=1
还原操作:
restore database stu_db2
from disk='e:\aaa.bak'
with file =1 --备份设备中第一个备份集
,norecovery --不对数据库执行任何操作
,nounload --不会回滚未提交事务
,relace --覆盖现有数据 库
,stats=5
字符串:
char(n);//n个字节
varchar(n)//可变长度,=输入大小+2个字节
text 可变长度长文本
Unicode 字符串:
Nchar(n)
Nvarchar(0)
Ntext(n)可以变,输入大小2倍
unicode 特点:
N前缀必须大写字母 ,例如:N'e:\a.ldf'
虚拟列固化:
stock as number*price Persisted //计算部价格的虚拟列并用PWRSISTED 固化
age datediff(year,birthday,getdate()) //没有固化,也不能固化,不确定值不能固化
修改列名:
exec sp_rename 'table1.coloumname','newname' //修改表的列名,