社区
MS-SQL Server
帖子详情
触发器多表更新问题
之穆
2005-08-03 02:55:55
有两个表A,B,分别有id字段,现在的问题是,我要在表A上建一个Update触发器,当表A上的其他字段发生改变时,表B中id值与表A中id值相等的记录也要发生改变。我想问的是,我在表A的Update触发器中怎样才能获得数据发生改变的那条记录的id?
...全文
180
2
打赏
收藏
触发器多表更新问题
有两个表A,B,分别有id字段,现在的问题是,我要在表A上建一个Update触发器,当表A上的其他字段发生改变时,表B中id值与表A中id值相等的记录也要发生改变。我想问的是,我在表A的Update触发器中怎样才能获得数据发生改变的那条记录的id?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
GRLD8888
2005-08-03
打赏
举报
回复
---建立测试环境
create table a (id int,quantity int)
create table b (id int,amount int)
insert a select 1,45
create trigger tr1
on a
for update
as
update b set amount=amount+quantity from inserted a join b on a.id=b.id
vivianfdlpw
2005-08-03
打赏
举报
回复
deleted 和 inserted 是逻辑(概念)表。这些表在结构上类似于定义触发器的表(也就是在其中尝试用户操作的表);这些表用于保存用户操作可能更改的行的旧值或新值。例如,若要检索 deleted 表中的所有值,请使用:
SELECT *
FROM deleted
如果兼容级别等于 70,那么在 DELETE、INSERT 或 UPDATE 触发器中,SQL Server 将不允许引用 inserted 和 deleted 表中的 text、ntext 或 image 列。不能访问 inserted 和 deleted 表中的 text、ntext 和 image 值。若要在 INSERT 或 UPDATE 触发器中检索新值,请将 inserted 表与原始更新表联接。当兼容级别是 65 或更低时,对 inserted 或 deleted 表中允许空值的text、ntext 或 image 列,将返回空值;如果这些列不可为空,则返回零长度字符串。
sqlserver
更新
字段值_数据库教程-SQL Server
多表
级联操作
数据库
多表
级联操作在实际数据表操作过程中,我们需要注意数据表数据的完整性,尤其是在存在关联关系的多个表操作过程中,一个表中数据发生变化必然会影响到相关表数据的改变。这也是我们在设计开发数据库过程中所需注意的
问题
。本文主要针对
多表
数据操作所面临的
问题
给出可行的解决方案措施。
问题
引入数据表的完整性要求是数据库设计的基本要求之一,举例如下:假设创建一个学生信息管理的数据库,该数据库中包含存储学生基本信息...
mysql
触发器
遍历_mysql
触发器
的实战经验
CREATE TRIGGER trigger_name trigger_time trigger_eventON tbl_name FOR EACH ROW trigger_stmtOLD列是只读的,NEW列则可以在
触发器
程序中再次赋值。查看
触发器
查看
触发器
语法如下,如果知道
触发器
所在数据库,以及
触发器
名称等具体信息:SHOW TRIGGERS from SF_User like "usermap...
oracle视图
更新
,替代
触发器
(转)
在oracle中通常如果视图的数据源来自单表则该视图可以进行
更新
。而如果视图数据源来自两个以上表时这个视图是不可
更新
的。但有时候为了操作的方便我们更希望能够对
多表
视图也进行
更新
。 这时候我们可以通过建立
更新
触发器
来替代该视图原有
更新
以达到
多表
更新
的效果 例如: 3.1 创建测试数据表 --===================================================
mysql
触发器
更新
本表
mysql的
触发器
不能对本表进行update操作,如下面 的示例,直接报 Can’t update table ‘tbl’ in stored function/trigger because it is already used by statement which invoked this stored function/trigger 错误, 如果你在
触发器
里面对刚刚插
触发器
--特殊的存储过程
很多人应该都用过存储过程和
触发器
,而
触发器
并不是一个新的概念,它只是一个特殊一些的存储过程, 它可以根据执行的TQL 语句自动执行,不需要我们去调用。
触发器
是为了数据库表结构的完成性、一致性而使用的,和单个表的约束一样,
触发器
是对于表之间的约束,它比主键约束范围更广泛一些,作用范围更大一些,下面给大家介绍一下常用的三种
触发器
. 【插入
触发器
(
MS-SQL Server
34,876
社区成员
254,635
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章