控制数据记录满足条件以后不能删除、修改

willdavis 2008-05-13 11:17:37
现在我有这样一个要求,在数据库中,某些记录满足一定条件后,不可以删除或修改。
比如,供应商采购数量和送货数量。当送货数量大于0时,该记录不能被删除。当送货数量大于采购数量时,采购数量不能修改。当送货数量大于0时,不能把采购数量修改成小于送货数量。

有没有人有这方面的想法,或者有更好的方法,希望大家探讨
...全文
64 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
willdavis 2008-05-13
  • 打赏
  • 举报
回复
可是现在我不能更改程序,程序是买的,不能修改,只能修改数据库。
pt1314917 2008-05-13
  • 打赏
  • 举报
回复
开发中尽量少用触发器吧。触发器写的好还好,如果写的有漏洞。到时候找问题会头疼死的。。
wzy_love_sly 2008-05-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ojuju10 的回复:]

或者在程序里面做判断和提示!
[/Quote]

还是程序控制比较好,触发器老是让人不放心啊
willdavis 2008-05-13
  • 打赏
  • 举报
回复
我想在数据库中进行控制。
用触发器的话,对性能有影响吗
一品梅 2008-05-13
  • 打赏
  • 举报
回复
e.cancel
jinjazz 2008-05-13
  • 打赏
  • 举报
回复
create table test (a varchar(10))
go
create trigger t_test on test for delete,update
as
begin
rollback tran
end

go

insert into test select '111'

update test set a='22'

select * from test

drop table test
drop trigger t_test
ojuju10 2008-05-13
  • 打赏
  • 举报
回复

或者在程序里面做判断和提示!
Limpire 2008-05-13
  • 打赏
  • 举报
回复
一般在商业逻辑层控制。
ojuju10 2008-05-13
  • 打赏
  • 举报
回复

在触发器里面解决!
dobear_0922 2008-05-13
  • 打赏
  • 举报
回复
用触发器
Limpire 2008-05-13
  • 打赏
  • 举报
回复
触发器
renzhe02 2008-05-13
  • 打赏
  • 举报
回复
那就用触发器吧
多测试一下

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧