sql server如何建判断某值满足条件就不插入该行的触发器

比如向test表插入数据,如果插入的某行数据的a列值为1就不插入该行数据该怎么写... 比如向test表插入数据,如果插入的某行数据的a列值为1就不插入该行数据
该怎么写
展开
 我来答
chen_hongyang
推荐于2016-01-27 · TA获得超过5446个赞
知道大有可为答主
回答量:2790
采纳率:91%
帮助的人:838万
展开全部
Create Trigger trtest
On test --在test表中创建触发器
for Update --为什么事件触发
As --事件触发后所要做的事情
DECLARE @a int
SET @a = select a from updated
if (@a=1)
begin
ROLLBACK
end
追问
应该不是update的吧,而且提示:在关键字 'select' 附近有语法错误。

我要的效果是这样:
create table test(a int,b char(10));
insert into test values(0,'fu'); --a的值为0的就不让插入
insert into test values(2,'fu'); --a值为其他的可以插入
追答
这个是update触发器
Create Trigger trtest
On test --在test表中创建触发器
for Update --为什么事件触发
As --事件触发后所要做的事情
DECLARE @a int
SET @a = (select a from updated)
if (@a=1)
begin
ROLLBACK
end

这个是insert触发器
Create Trigger trtest
On test --在test表中创建触发器
for insert --为什么事件触发
As --事件触发后所要做的事情
DECLARE @a int
SET @a = (select a from updated)
if (@a=1)
begin
ROLLBACK
end
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式