当前位置:首页 » 编程语言 » sql触发器不能读
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql触发器不能读

发布时间: 2023-05-08 18:58:50

sql触发器无效

“我想在一个表发生变时另外一个表跟着碰困出现同样的变化”
既然你想实现这信轿个功能,那么在触发器里你应该像另外一个表插入数据才对。
而你的触发器是更新操作,如果ky_totaldata表没有数笑坦念据的话,肯定不会有什么变化。

假如两个表结构相同,那么用如下触发器

create trigger [TRI_NEWSDATA]
ON [dbo].[KY_NEWSDATA]
for insert
as

insert into [dbo].[ky_totaldata]
select *
from inserted

向KY_NEWSDATA表插入数据后,就会触发进ky_totaldata表中。

⑵ sql触发器不起作用

触纤乎埋发器能应该正常被触发. 问题在于你的条件if @amount = null, 这个顷物表达式的结果永远都是false, 故毁蚂你的update语句不会被执行. 要改成if @amount is null.

⑶ SQL触发器代码不能执行

你序列号创建了么?

SQL>CREATESEQUENCEtest_sequence2
2incrementby1--每次递增1
3startwith1--从1开始
4nomaxvalue--没有最大值
5培森minvalue1--最小值=1
6NOCYCLE;--不循环

Sequencecreated.

SQL>CREATETABLEtest_create_tab2(
2idINT,
3valVARCHAR(10),
4PRIMARYKEY(id)
5);

Tablecreated.


SQL>
2数乱BEFOREINSERTONtest_create_tab2
3FOREACHROW
4BEGIN
5SELECTtest_sequence2.nextvalINTO:new.idFROMal;
6END;
7/

Triggercreated.

SQL>INSERTINTOtest_create_tab2(val)VALUES('NOid'薯中档);

1rowcreated.

SQL>INSERTINTOtest_create_tab2(id,val)VALUES(1,'idnouse');

1rowcreated.

SQL>SELECT*FROMtest_create_tab2;

IDVAL
------------------------------
1NOid
2idnouse

⑷ SQL2005触发器不运行

看了一下,可能会报错的只有这一句
if (select count(*) from 销售订单罩铅表
where 订单号橘激=(select 订单号 from inserted))>1
当(select 订单号 from inserted) 有多个返回值是不能用物伍好 = ,会报错,你把语句改成
if (select count(*) from 销售订单表
where 订单号 in (select 订单号 from inserted))>1
试试

⑸ sql server 触发器无法使用是因为什么

应该是写入的数据不符合B表的规则,所以造成写入错误,就回退了。B表错了,A表就同样不会写入成功了。

⑹ 为什么这么简单的sql触发器都不能执行

触发器 目的往往是为了保证数据的一致性,所以在服务器端设置触发器,一旦用户 修改 删除,或者添加了某一个 字段的数据,然后设置好的触樱晌发器自动执行另一个 修改 删除 或者添加操作,以保证数据的关联性 或者一致性。

你的触发器内容为散激 一冲颂袜个 简单的 select 查询,个人认为好像没有意义。
另外错误提示是 语法问题。你可以再仔细检查下。

⑺ sql 触发器不执行:

逻辑问题,begin 和end的位置不对,事务无法正常执行!

⑻ sql触发器怎么不起作用,没有数据信息,代码如下:

你的select 部分有语法错误啊,备缺开始节点=(select 节点名称 from A008物理节点表 where ID=开始节点ID) 这个地方是不能这样写的。如果你是要显示固定的开始节点,就把“开始节点=”去掉竖滚唯,如果你是想筛选开始节点是(select 节点名称 from A008物理节余培点表 where ID=开始节点ID) 这个值的,把它写到where条件中去。