
sql2000数据库,某记录值修改后自动恢复 20
请教各位高手我在企业管理器中修改某表下的某条记录的值,无论是手工直接改写还是用UPDATE语句修改,每次修改后只要光标一离开该字段,该字段中的数值就会自动恢复到原来的值,...
请教各位高手
我在企业管理器中修改某表下的某条记录的值,无论是手工直接改写还是用UPDATE语句修改,每次修改后只要光标一离开该字段,该字段中的数值就会自动恢复到原来的值,就像是被“锁定”了
请问这是什么原因呢?
被关联了?
我没有运行其它的程序. 展开
我在企业管理器中修改某表下的某条记录的值,无论是手工直接改写还是用UPDATE语句修改,每次修改后只要光标一离开该字段,该字段中的数值就会自动恢复到原来的值,就像是被“锁定”了
请问这是什么原因呢?
被关联了?
我没有运行其它的程序. 展开
2个回答
展开全部
你把加了禁止修改的触发器 先找到触发器名字
用这个把他禁止掉
禁用:
alter table 触发器的名字
disable trigger NoDelete002
2> 启用:
alter table 触发器的名字
enable trigger NoDelete002
给你看一下我们一个关于会员卡系统的加的一个触发器。
如果加了象我这样的触发器 你就没有可能更改表中数据
如下:
--/*kkh_congjjf,会员卡积分系统触发器*/
create trigger kkh_congjjf on docckkh
for update
as
if ((select a.leijijf-b.leijijf
from inserted a,deleted b
where a.cardid=b.cardid)<0 and
(select a.ljxfe-b.ljxfe
from inserted a,deleted b
where a.cardid=b.cardid )=0 and not update(is_jf))
insert into retcjmx (riqi,ontime,cardid,chongjjf,hostname,caozy,beizhu)
select convert(char (10),getdate(),120) as riqi,
convert(char (8),getdate(),114) as ontime,
a.cardid,
b.leijijf-a.leijijf as chongjjf,
host_name() as hostname,
'' as caozy,'' as beizhu
from inserted a,deleted b
where a.cardid=b.cardid
用这个把他禁止掉
禁用:
alter table 触发器的名字
disable trigger NoDelete002
2> 启用:
alter table 触发器的名字
enable trigger NoDelete002
给你看一下我们一个关于会员卡系统的加的一个触发器。
如果加了象我这样的触发器 你就没有可能更改表中数据
如下:
--/*kkh_congjjf,会员卡积分系统触发器*/
create trigger kkh_congjjf on docckkh
for update
as
if ((select a.leijijf-b.leijijf
from inserted a,deleted b
where a.cardid=b.cardid)<0 and
(select a.ljxfe-b.ljxfe
from inserted a,deleted b
where a.cardid=b.cardid )=0 and not update(is_jf))
insert into retcjmx (riqi,ontime,cardid,chongjjf,hostname,caozy,beizhu)
select convert(char (10),getdate(),120) as riqi,
convert(char (8),getdate(),114) as ontime,
a.cardid,
b.leijijf-a.leijijf as chongjjf,
host_name() as hostname,
'' as caozy,'' as beizhu
from inserted a,deleted b
where a.cardid=b.cardid
参考资料: 如果问题解决,请厚道点,给我分分分哟~~~~~~~~~~~~~~~~~~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询