社区
MS-SQL Server
帖子详情
有关触发器中判断记录是否更新的问题
softonecn
2003-11-12 10:43:12
现在对一个表写了一个触发器,我现在利用触发器来进行日志备份,可是我想在记录不发生改变时不记录日志,请问我如何判断Inserted和Deleted表中的记录是否相同?不要告诉我一个字段一个字段的写啊。
...全文
109
3
打赏
收藏
有关触发器中判断记录是否更新的问题
现在对一个表写了一个触发器,我现在利用触发器来进行日志备份,可是我想在记录不发生改变时不记录日志,请问我如何判断Inserted和Deleted表中的记录是否相同?不要告诉我一个字段一个字段的写啊。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
softonecn
2003-11-12
打赏
举报
回复
pengdali(大力 V3.0) ,
再请教,如果更新的是一组记录,而不是一个记录呢?
例如一共有10个记录,而@@RowCount=5?
pengdali
2003-11-12
打赏
举报
回复
使用 IF UPDATE 子句测试数据修改
下例在表 my_table 中创建名为 my_trig 的 INSERT 触发器,并测试列 b 是否受到任何 INSERT 语句的影响。
CREATE TABLE my_table*
(a int NULL, b int NULL)
GO
CREATE TRIGGER my_trig
ON my_table
FOR INSERT
AS
IF UPDATE(b)
PRINT 'Column b Modified'
GO
pengdali
2003-11-12
打赏
举报
回复
@@ROWCOUNT
返回受上一语句影响的行数。
语法
@@ROWCOUNT
返回类型
integer
注释
任何不返回行的语句将这一变量设置为 0 ,如 IF 语句。
示例
下面的示例执行 UPDATE 语句并用 @@ROWCOUNT 来检测是否有发生更改的行。
UPDATE authors SET au_lname = 'Jones'
WHERE au_id = '999-888-7777'
IF @@ROWCOUNT = 0
print 'Warning: No rows were updated'
JAVAEE实战讲解课程
Java EE是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用.随着WEB和EJB容器概念诞生,使得软件应用业开始担心SUN的伙伴们
是否
还在上不断推出翻新的标准框架
oracle
触发器
中
判断
记录
是否
为空
我开始写了一个
触发器
,要
判断
SSO_SP_LIST表
中
MASTER_SESS_ID字段值与我要在SSO_MASTERS_INF表
中
删除的
记录
的MASTER_SESS_ID字段值相等的
记录
是否
为空,我select了该
记录
的MASTER_SESS_ID字段,放入变量v(字段MASTER_SESS_ID类型),
判断
if v is not null,结果v为空时,
触发器
执行到这里就出错。于是我将变量改为整
oracle
判断
表不为空,oracle
触发器
中
判断
记录
是否
为空 | 学步园
我开始写了一个
触发器
,要
判断
SSO_SP_LIST表
中
MASTER_SESS_ID字段值与我要在SSO_MASTERS_INF表
中
删除的
记录
的MASTER_SESS_ID字段值相等的
记录
是否
为空,我select了该
记录
的MASTER_SESS_ID字段,放入变量v(字段MASTER_SESS_ID类型),
判断
if v is not null,结果v为空时,
触发器
执行到这里就出错。于是我将变量改为整...
Mysql
触发器
对同一个表的相同触发时间的相同触发事件,只能定义一个
触发器
(针对mysql而言)。例如,在对某个表的不同字段的alter
更新
触发器
,在使用oracle数据库的时候,可以定义两个不同的update
触发器
,
更新
不同的字段时触发单独的
触发器
,但是在mysqy数据库时候,只能定义一个
触发器
,在
触发器
中
通过
判断
更新
的字段进行对应的处理。 使用别名OLD和NEQW来引用
触发器
中
发生变化的
记录
内容。现在
触发器
mysql
触发器
条件
判断
偶尔失效_MySQL
触发器
中
IF条件
判断
问题
MySQL
触发器
中
IF条件
判断
问题
前几天修改了一张回答表的
触发器
,结果保存草稿的时候报错:Data truncation: Truncated incorrect datetime value: '',经排查是
触发器
中
一条
判断
的
问题
,我们来看原来的语句:IF CONCAT(new.delete_flag,new.status)!=CONCAT(old.delete_flag,old.status)...
MS-SQL Server
34,499
社区成员
254,563
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章