您的位置:首页 > 数据库

一个SQL的小练习

2009-07-12 22:41 323 查看
好久没写博,考试结束了,分数出来了,这次应该可以拿本证书。闲着没事干,把上次做的一个小小的SQL练习贴出来。

create table rk_stuInfo(
rkid varchar(10) NOT NULL,
rkname varchar(10) NOT NULL,
rkclass varchar(10),
primary key(rkid,rkname),
rkgrade1 numeric(4,2) check(rkgrade1 >=0 and rkgrade1 <= 100),
rkgrade2 numeric(4,2) check(rkgrade2 >=0 and rkgrade2 <= 100),
rkok char(2) check(rkok in ('是','否'))
)

insert into rk_stuInfo
values('01006','陈斌','我的博客',60,59,'是')

select * from rk_stuInfo

alter table rk_stuInfo alter column rkclass varchar(20)

create trigger rk_stuInfo_rkok
on rk_stuInfo
for update,insert
as
if 45 > (select rkgrade1 from inserted) or 45 > (select rkgrade2 from inserted)
begin
update rk_stuInfo
set rkok = '否'
where rkid in (select rkid from inserted)
end
else
update rk_stuinfo
set rkok = '是'
where rkid in (select rkid from inserted)

update rk_stuInfo
set rkok = '是'
where rkid = '01003'

create table rk_stuConn(
rkid varchar(10) primary key,
stuAdd varchar(20),
stuTel varchar(20) NOT NULL,
)
insert into rk_stuConn
values('01006','我的大学','9099899')

select * from rk_stuConn

alter table rk_stuInfo
add constraint cstr_rkid foreign key(rkid) references rk_stuConn(rkid)
on delete cascade
on update cascade


好久没看书,今天看了一下E-SQL。看起来挺简单的。明天继续努力吧。向下一个证书发起挑战。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: