Php 将记录标记为delete,而不是从mysql表中删除该记录

Php 将记录标记为delete,而不是从mysql表中删除该记录,php,mysql,Php,Mysql,我想知道如何将记录标记为已删除,而不是从数据库中实际删除记录。我以前从未遇到过这样的事情。是否有我可以遵循的教程?最简单的方法是向表中添加一个新的BOOL列,如启用了,默认值为1 然后updatetable\u name SET enabled=0当您要“删除”该行时 并过滤掉查询中的“已删除”行,如: 从表名称中选择*,其中。。。AND enabled=1最简单的方法是向表中添加一个新的BOOL列,如enabled,默认值为1 然后updatetable\u name SET enabled=

我想知道如何将记录标记为已删除,而不是从数据库中实际删除记录。我以前从未遇到过这样的事情。是否有我可以遵循的教程?

最简单的方法是向表中添加一个新的BOOL列,如启用了
,默认值为
1

然后
updatetable\u name SET enabled=0
当您要“删除”该行时

并过滤掉查询中的“已删除”行,如:


从表名称中选择*,其中。。。AND enabled=1

最简单的方法是向表中添加一个新的BOOL列,如
enabled
,默认值为
1

然后
updatetable\u name SET enabled=0
当您要“删除”该行时

并过滤掉查询中的“已删除”行,如:


从表名称中选择*,其中。。。AND enabled=1

在表中使用一个额外的布尔字段来表示条目是否有效

TableName(<Your Fields>,Valid)
TableName(,有效)
Valid=1,则它存在


Valid=0,则会将其删除。

在表中使用一个额外的布尔字段来表示条目是否有效

TableName(<Your Fields>,Valid)
TableName(,有效)
Valid=1,则它存在


Valid=0,则它被删除。

MySQL中没有内在的东西可以将记录标记为已删除-但是您可以添加自己的列来描述状态-您只需要记住将其从查询中排除。当您尝试插入一行,该行具有与已删除记录匹配的唯一/主键时,会出现复杂情况;您需要添加一个触发器来修改状态。实际上,一个更简单的选择是首先删除数据(不删除行并不能说明您想要实现什么)

MySQL中没有任何内在的东西可以将记录标记为已删除-但是您可以添加自己的列来描述状态-您只需要记住将其从查询中排除。当您尝试插入一行,该行具有与已删除记录匹配的唯一/主键时,会出现复杂情况;您需要添加一个触发器来修改状态。实际上,一个更简单的选择是首先删除数据(不删除行并不能说明您想要实现什么)

如果您想保留所有记录,是否可以向表中添加一个布尔字段以标记“已删除”记录?如果您想保留所有记录,是否可以向表中添加一个布尔字段以标记“已删除”记录“删除”记录?