回答
你可以創建一個使用外鍵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. 刪除SQL上的觸發器之前。
- 4. 調用在刪除之前觸發
- 5. Mysql刪除前觸發器,防止刪除如果沒有where子句?
- 6. 之前刪除觸發性能低下
- 7. 而不是刪除之前的觸發
- 8. 刪除觸發器
- 9. 在刪除觸發器刪除另一個表中的條目之前
- 10. 火鳥觸發前刪除
- 11. Perforce:如何刪除p4v拒絕刪除的更改列表?
- 12. 通過SQL語句刪除多行「從表名中刪除」,而觸發「之後刪除」已對
- 13. 拒絕刪除的Cookie
- 14. NSHTTPCookies拒絕被刪除
- 15. 創建刪除前觸發器?
- 16. DDL語句針對刪除插入在DML觸發器中
- 17. 如何刪除/拒絕私人podspec?
- 18. 刪除後刪除觸發器只會觸發嗎?
- 19. 如何觸發軟刪除?
- 20. 如何刪除壞觸發
- 21. sqlite在刪除插入觸發器之前
- 22. 在使用transact-SQL刪除觸發器之前
- 23. 我怎麼能寫之前刪除觸發器在SQL Server
- 24. 在SQL Server中刪除觸發器之前
- 25. 刪除變異觸發器
- 26. 無法刪除觸發器
- 27. 刪除觸發器SQL 2005
- 28. 刪除SQL觸發器
- 29. 創建刪除觸發器
- 30. MySQLi刪除語句不會刪除
這是什麼意思?提供一個用例。 – Nishant 2011-02-27 09:21:08
@Nishant:我添加了示例用例。 – 2011-02-27 09:56:29