在成绩表中创建一个触发器,题目在下面,如果你们电脑里没有成绩表的话,随便什么表都行,只要意思差不多

1)修改成绩表,新增一个“备注”列,数据类型为char(10),给出修改的SQL语句。(2)在成绩表中创建一个名为mytrigger的触发器,当对该表录入成绩信息或修改成... 1)修改成绩表,新增一个“备注”列,数据类型为char(10),给出修改的SQL语句。
(2)在成绩表中创建一个名为mytrigger的触发器,当对该表录入成绩信息或修改成绩列时,如果分数小于60分,则将备注列的内容写为“不及格”。给出创建触发器的SQL语句。
展开
 我来答
这只橘子
2012-04-17
知道答主
回答量:12
采纳率:0%
帮助的人:14.1万
展开全部
第一个应该没问题吧
alter table 成绩表
add 备注 char(10)

给你第二个
Create trigger mytrigger on 成绩表
after insert,update
AS
begin
declare @分数 int, @tid int
select @tid = 学号, @分数 = 成绩 from inserted
if @分数 < 60
update 成绩表 set 备注 = '不及格' where 学号 = @tid
end

不给分让蔡莉挂死你亲
追问
你叫啥啊??说了就给分。
追答
。。。。老蔡???
Coolerlxl
2012-04-14 · TA获得超过640个赞
知道小有建树答主
回答量:431
采纳率:0%
帮助的人:349万
展开全部
//MySQL数据库下
CREATE TABLE `score` (
`XH` varchar(10) NOT NULL,
`XM` varchar(20) NOT NULL,
`YuWen` smallint(6) default NULL,
`Demo` varchar(20) default NULL,
PRIMARY KEY (`XH`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
//插入时的触发器
CREATE TRIGGER `Tri_Insert` BEFORE INSERT ON `score` FOR EACH ROW begin
if(NEW.YuWen <60) then
set NEW.Demo ='不及格' ;
end if;
end
;
//修改时和插入是近似的
CREATE TRIGGER `Tri_Update` BEFORE UPDATE ON `score` FOR EACH ROW begin
if(NEW.YuWen <60) then
set NEW.Demo ='不及格' ;
end if;
end
;
更多追问追答
追问
修改的和插入的不能同时进行吗?
追答
在mysql里面是这样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lishan2100
2012-04-17 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:164
采纳率:57%
帮助的人:43.3万
展开全部
create table mytable
( tid int,
tName char(10)
tFenshu int
tbeizhu char(10)
go
create trigger tr_mytable
on mytable
after insert,update
as
begin
declare @tid int,@tFenshu int
select @tid=tid,@tfenshu=tfenshu from insertd
if @tfenshu<60
update mytable set tbeizhu='不及格' where tid=@tid
end
go
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
亮爱大分清1e
2012-04-14
知道答主
回答量:7
采纳率:0%
帮助的人:8327
展开全部
常规制表
追问
不是制表问题,我是要创建这个触发器的SQL语句。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式