sql 当一个表update的时候,另外一个表的数据也跟着变化

sql 当一个表update的时候,另外一个表的数据也跟着变化,就是说,有a,b两个表,当更新a表的时候,系统自动更新b表,这可以实现吗
?如果可以,怎么建立ab这两个表?

第1个回答  2008-10-07
建个触发器就可以了
这是我原来写过一个触发器,希望有帮助

CREATE TRIGGER JXD7_BB_CGY_TRI_AUDITING
ON JXD7_BB_CGY_LR_JIBAOJIANXIU
FOR INSERT,DELETE,UPDATE
AS
--定义变量
DECLARE @STATIONID VARCHAR(50)
DECLARE @TBNAME VARCHAR(50)
DECLARE @RQ VARCHAR(50)
SELECT @STATIONID=STATIONID, @TBNAME='JXD7_BB_CGY_LR_JIBAOJIANXIU',@RQ=SUBSTRING(SJJYSJ,1,7) FROM JXD7_BB_CGY_LR_JIBAOJIANXIU
--触发的事件
DELETE FROM JXD7_BB_CGY_PUBLIC WHERE REPORTTYPE=2 AND REPORTNAME =(SELECT REPORTNAME FROM JXD7_BB_CGY_TABLEFTOFRPORT WHERE TBNAME=@TBNAME) AND STATIONID=@STATIONID AND RQ=@RQ本回答被提问者采纳
第2个回答  2008-10-07
可以实现,两个表之间用个关联字段连接
第3个回答  2008-10-07
建立两个表.在两表之间建立 触发器 ,可以实现.
第4个回答  2008-10-08
使用触发器应该可以,因为需要检测到插入数据操作,并需要触发同步更新操作,^_^
第5个回答  2008-10-07
视图不能更新吧,你还不如同时写两次库

sql 当一个表update的时候,另外一个表的数据也跟着变化
FOR INSERT,DELETE,UPDATE AS --定义变量 DECLARE @STATIONID VARCHAR(50)DECLARE @TBNAME VARCHAR(50)DECLARE @RQ VARCHAR(50)SELECT @STATIONID=STATIONID, @TBNAME='JXD7_BB_CGY_LR_JIBAOJIANXIU',@RQ=SUBSTRING(SJJYSJ,1,7) FROM JXD7_BB_CGY_LR_JIBAOJIANXIU --触发的事件 DELETE FROM...

sql创建触发器 当我把一个表中数据更改时另一个表中的数据也改变
很简单.reate or replace trigger tri_name after update on 表的名字 for each row begin if Userstate=0 then update 另外一个表 set UserState = '0';dbms_output.put.line('已改变');else null;end;触发器比较经典的用法,百度就一大堆....

sql update语句 一张表的数据更新到另一张表
在数据库操作中,SQL的UPDATE语句用于更新表中的数据。当您需要将一张表的数据更新到另一张表时,可以使用JOIN操作将两个表连接起来,并根据特定条件进行数据迁移。例如,假设您有两张表:tbl_1 和 tbl_2。在这两个表中,表tbl_1的类别字段和表tbl_2的物料组描述字段值相同,您希望将表tbl_2的...

使用SQL修改一个表另一表也修改
理解触发器里面的两个临时的表:Deleted , Inserted 。注意Deleted 与Inserted分别表示触发事件的表“旧的一条记录”和“新的一条记录”。一个数据库系统中有两个虚拟表用于存储在表中记录改动的信息,分别是:虚拟表Inserted 虚拟表Deleted 在表记录新增时 存放新增的记录 不存储记录 修改时 ...

sql 触发器在对一个进行update操作的时候需要与判断另一个表里是否有...
触发器可以参考下面的,不过我感觉可以创建一个外键更好 create trigger tr_test_id on test after update as if not exists (select 1 from t1,inserted where t1.name=inserted.name and t1.id=inserted.id)begin print '不允许修改!'rollback transaction end ...

UPDATE语句:将一个表里的字段更新到另一个表的字段里的语句
UPDATE语句是SQL中一种强大的工具,允许我们更新数据库中的数据。在某些场景下,我们可能需要将一个表中的字段更新为另一个表的对应字段。例如,在一个成绩查询系统中,可能需要修改一张表,增加一个字段,然后将另一个表的特定ID复制过来。此时,编写循环处理可能并不高效,使用SQL语句则更为简便。考虑...

sql 中如何设置触发器使修改一个表中列的值时,同时修改另一个表的值
可以创建如下类似触发器 create trigger depart_update on depart for update as begin if update(deptno)begin update worker set deptno = b.deptno from inserted b where worker.col1 = b.col1 end end

sql数据库中,怎么使两个表中,有一个数据是一样的,然后修改一个,另一...
1: 同时更新两种表 update A set 字段=XX where 条件 update B set 字段=XX where 条件 2:使用触发器 在A表建立触发器 更新B表信息 create trigger on A for update update B set 字段=XX where 条件(使用inserted ,deleted表)--- 调用直接使用更新语句更新A表即可 update A set 字段=XX...

delphi+sql 更改表中的一个数据 同时表中另一个数据也改变
1、使用触发器 A表上建立一个触发器(before update),当某一行数量改变时,在B表中和A表名称对应的行也update一下;2、程序中执行update tableA set...语句后紧接着执行update tableB set...

查询一个表中满足条件的最新记录去更新另一个表中相关的字段信息的SQ...
UPDATE Table_A T SET T.LatestTM=S.TM, T.LatestData=S.Data FROM (select A.ID, B.TM, A.DATA from TABLE_B A,JOIN (select B.ID,MAX(B.TM) from TABLE_B B group by B.ID) C ON A.ID = C.ID ) S where Table_A.ID = S.ID ...

相似回答
大家正在搜