关于数据库不断刷新查找的问题,有没有其他更好的解决办法.VB.NET,MSSQL

来源:百度知道 编辑:UC知道 时间:2024/06/12 14:26:35
数据库不断的有用户添加.当用户A添加的字段当时没有人重复,过段时间用户B添加的字段与用户A重复后,执行某函数.这就需要设定一个时间间隔不停的刷新数据库来查找.请问这会不会很占系统资源.有什么好的别的办法可以解决.

可以用触发器,这样无需设置什么刷新时间,当有新数据插入时就自动检查表中是否已经存在相应数据。
比如你的表是A,要检查新插入的数据中字段B是否已经存在于原表,如果存在就执行某些操作,不存在才插入。由于触发器本身是很消耗资源的,所以如果数据量很大可能执行效率很低,不过按你的要求,这应该是最简单的方法了。

create trigger tg_a_insert
on a
instead of insert
as

if exists(select * from a ,inserted where a.b=inserted.b )
begin
--这里执行存在相同值时的操作,如果不加代码是不能执行的,所以一定要执行一些操作

end
else
begin
--不存在相同值,那么插入数据即可
insert into a
select *
from inserted
end