gpt4 book ai didi

mysql - 保护特定对象 ID 不被 MySQL 删除

转载 作者:行者123 更新时间:2023-11-30 21:26:11 24 4
gpt4 key购买 nike

我的数据库中有 97 个对象,范围从 id=1id=97,其中包含核心数据。有什么方法可以保护只有这些对象(=等于列名)不被删除,而不是整个列


|objects|
---------
id int primary key

some more non key attributes...

SELECT * FROM objects 返回类似于

id | ... 

1 | ... // <- should be protected

2 | ... // <- should be protected

3 | ... // <- should be protected

... | ...

97 | ... // <- last object to be protected

98 | ... // <- should not be protected!!!

最佳答案

您可以通过创建另一个表来执行此操作,该表使用 FOREIGN KEY 约束和 ON DELETE RESTRICT 引用此表。

CREATE TABLE protected_objects (
obj_id INT
FOREIGN KEY(obj_id)
REFERENCES objects(id)
ON DELETE RESTRICT
)

您可以在 protected_objects 表中创建行,列出应 protected 对象。您可以通过根据您的用例限制对 protected_objects 表的权限来控制保护和取消保护对象的能力。

关于mysql - 保护特定对象 ID 不被 MySQL 删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58938575/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com