回答
你可以创建一个使用外键constrait引用您的ID列(前提是你的表的主键)的表。将一行插入到引用ID = 0的“子”表中并从该表中删除用户的所有更新/删除权限。
现在如果有人试图删除“父”表中ID = 0的行,由于另一个表中的现有子行而失败。
这是一个非常糟糕的想法(至少对我来说,因为我们的db中有超过130个表) – 2011-02-27 10:53:00
@Behrouz:这是否意味着你需要为每个表提供这种“保护”?听起来像一个非常奇怪的设置然后.. – 2011-02-27 11:02:11
不是为每个表,但我有很多表之间的关系,这种解决方案使它更复杂。我写了一个ORM,它生成SOAP Web服务,增加了一个额外的无用列,使Web服务变得丑陋和容易出错 – 2011-02-27 11:08:11
看这里,同样的事情,但与插件触发:How to abort INSERT operation in MySql trigger?
- 1. 触发器在删除记录之前
- 2. 如何在T-SQL 2005的删除之前触发触发器?
- 3. 在删除触发器之前删除相关记录postgresql
- 4. 调用在删除之前触发
- 5. 之前删除触发性能低下
- 6. 而不是删除之前的触发
- 7. 删除触发器
- 8. 在删除触发器删除另一个表中的条目之前
- 9. NSHTTPCookies拒绝被删除
- 10. 创建删除前触发器?
- 11. DDL语句针对删除插入在DML触发器中
- 12. 如何删除/拒绝私人podspec?
- 13. 删除后删除触发器只会触发吗?
- 14. 在使用transact-SQL删除触发器之前
- 15. 如何触发软删除?
- 16. 如何删除坏触发
- 17. 无法删除触发器
- 18. 创建删除触发器
- 19. 删除触发器SQL 2005
- 20. MySQLi删除语句不会删除
- 21. 批量删除触发器(太多的Soql语句)Salesforce.com
- 22. SQL删除语句
- 23. sql删除语句
- 24. Inotify在删除之前还是之后触发IN_DELETE?
- 25. 删除之前发生在打开删除确认模式
- 26. MySQL之前删除触发器双连接和条件
- 27. oracle触发删除
- 28. 删除SQL Server触发器 - 哪些记录在删除表中?
- 29. 在发布之前删除日志System.Diagnostics
- 30. 如何在“#”之前删除字符串?
这是什么意思?提供一个用例。 – Nishant 2011-02-27 09:21:08
@Nishant:我添加了示例用例。 – 2011-02-27 09:56:29