您的当前位置:首页正文

第14次实验2012-答案

2020-10-24 来源:伴沃教育
1. 数据库中有表 student(id,name,sex,age,specialty),在student表中建立一个insert触发器,当插入记录的年龄小于0时,显示错误信息,并不执行此操作 create trigger ins on student for insert as

declare @i int

select @i=age from inserted if @i<0 begin

print '年龄不能小于0' rollback end

2. 建立数据库testdb,并在数据库中建立两个表: create database testdb; go

use testdb;

create table Txl( ID int, Name char(10), Age int); create table Person_counts( Person_count int); create database testdb go

use testdb

create table Txl(ID int,Name char(10),Age int) create table Person_counts( Person_count int)

3. 使用T-SQL编写一个触发器tr_person_ins,每当txl表中插入一行数据时,表Person_ counts中对应的数量也相应地发生变化。

create trigger tr_person_ins on txl for insert as begin

declare @q int

select @q = (select count(*) from txl) update Person_counts set Person_count=@q end

4. 创建一个触发器tr_person_del,每当txl表中删除记录时,表Person_ counts中对应的数量也相应地发生变化。

create trigger tr_person_del on txl for delete as begin

declare @q int

select @q = (select count(*) from txl) update Person_counts set Person_count=@q end

因篇幅问题不能全部显示,请点此查看更多更全内容