use
master
go
if
exists (select * from sysdatabases where name='Study')--
判断
Study
数据库是否存在,是则删除
drop database Study
go
EXEC
sp_configure 'show advanced options', 1
GO
--
更新当前高级选项的配置信息
RECONFIGURE
GO
EXEC
sp_configure 'xp_cmdshell', 1
GO
--
更新当前功能(
xp_cmdshell
)的配置信息
.
RECONFIGURE
GO
exec
xp_cmdshell 'mkdir D:\data', NO_OUTPUT
--
利用
xp_cmdshell
命令创建文件夹,此存储过程的第一个参数为要执行的有效
dos
命令,第二个参数为是否输出返回信息。
go
create
database Study--
创建数据库
on
primary
(
name='Study_data',--
主数据文件的逻辑名
fileName='D:\data\Study_data.mdf',--
主数据文件的物理名
size=10MB,--
初始大小
filegrowth=10% --
增长率
)
log
on
(
name='Study_log',--
日志文件的逻辑名
fileName='D:\data\Study_data.ldf',--
日志文件的物理名
size=1MB,
maxsize=20MB,--
最大大小
filegrowth=10%
)
go
use
Study
go
if
exists (select * from sysobjects where name='Student')--
判断是否存在此表
drop table Student
go
create
table Student
(
id int identity(1,1) primary key,--id
自动编号,并设为主键
[name] varchar(20) not null,
sex char(2) not null,
birthday datetime not null,
phone char(11) not null,
remark text,
tId int not null,
age as datediff(yyyy,birthday,getdate())--
计算列。
)
go
if
exists (select * from sysobjects where name='Team')
drop table Team
go
create
table Team
(
id int identity(1,1) primary key,
tName varchar(20) not null,
captainId int
)
go
alter
table Student
add
constraint CH_sex check(sex in ('
男
'
,
'
女
'
)),
--
检查约束,性别必须是男或女
constraint CH_birthday check(birthday between '1950-01-01' and '1988-12-31'),
constraint CH_phone check(len(phone)=11),
constraint FK_tId foreign key(tId) references Team(id),--
外键约束,引用
Team
表的主键
constraint DF_remark default('
请在这里填写备注
'
)
for remark--
默认约束,
go
alter
table Team
add
constraint UK_captainId unique(captainId)--
唯一约束
go
insert
into Team values('
第一组
'
,
1)
insert
into Team values('
第二组
'
,
2)
insert
into Team values('
第三组
'
,
3)
insert
into Team values('
第四组
'
,
4)
insert
into Team values('
第五组
'
,
5)
insert
into Student values('
张三
'
,
'
男
'
,
'1982-6-9'
,
'23456789451'
,
'
来自天津
'
,
1)
insert
into Student values('
李四
'
,
'
男
'
,
'1987-6-9'
,
'78945678945'
,
'
安徽
'
,
4)
insert
into Student values('
王五
'
,
'
男
'
,
'1982-6-9'
,
'65987845651'
,
'
大连
'
,
3)
insert
into Student values('
赵六
'
,
'
男
'
,
'1981-6-9'
,
'25487965423'
,
'
湖南
'
,
5)
insert
into Student(name,sex,birthday,phone,tId) values('
江七
'
,
'
男
'
,
'1984-6-9'
,
'25487965423'
,
5)
select
* from Team
select
* from Student
if
exists (select * from sysobjects where name='teacher')
drop table teacher
go
create
table teacher
(
id int identity (1,1) primary key,
name varchar(20),
address varchar(20)
)
go
insert
into teacher values('zhang','hubei')
insert
into teacher values('wang','hubei')
insert
into teacher values('li','hubei')
insert
into teacher values('chen','hunan')
insert
into teacher values('zhao','hunan')
insert
into teacher values('tian','guangdong')
insert
into teacher values('ma','guangdong')
insert
into teacher values('chang','tianjin')
insert
into teacher values('liang','beijing')
select
* from teacher
select
count(*),address from teacher group by address having address<>'hunan'
--
按地址分组查询并用
having
字句筛选出地址不是
‘hunan’
的