我有四个表:
用户
: id, thread_idthreads
: id, language_id帖子
:id、user_id、language_id语言
:id
USERS.thread_id 是 THREADS.id 的外键,POSTS.user_id 是 USERS.id 的外键,POSTS.language_id 是 LANGUAGES.id 的外键。
我无法删除用户,因为 POSTS.user_id 会抛出外键约束错误,而且我无法删除帖子,因为我希望所有帖子(和主题)都可以在那里读取,即使用户是已删除。
我该怎么办?
最佳答案
这称为软删除,您可以在 SO 上看到它的工作原理。当您看到“已删除”用户的回答时,他们会显示为灰色。
将用户保留在数据库中,但添加一个标记列 isDeleted
,您在删除用户时设置它。
然后(显然)禁止该用户的任何登录并(可选)特别显示它们。
关于sql - 帮助删除关系表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1968202/