小呀小菜鸡 2016-06-16 02:03 采纳率: 85.7%
浏览 1088
已采纳

问个数据库问题,关于触发器的

我写了这样一个脚本
--插入学生记录,如果有,回滚告诉不能插入
CREATE TRIGGER x3_insert
ON XSB INSTEAD OF INSERT
AS
BEGIN
DECLARE @num1 char(6),@num2 char(8)
SELECT @num1=snumber from inserted
SELECT @num2=sname FROM XSB WHERE @num1=snumber
IF(@num2 IS NOT NULL)
BEGIN
PRINT '不能插入'
ROLLBACK

END
END
这样一个触发器,验证时他却是这样
INSERT INTO XSB VALUES('081106','陶伟',1,'1990-03-05','软件工程',50,NULL);
执行时他报了一个这样的错
不能插入
消息 3609,级别 16,状态 1,第 1 行
事务在触发器中结束。批处理已中止。
这是什么原因呀,求大神告诉

  • 写回答

1条回答 默认 最新

  • zhaohuijiadelu 2016-06-16 04:28
    关注

    你的触发器好像没有设置插入前 还是插入后触发呀

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程