日期:2014-05-17  浏览次数:20456 次

sql知识
大家好。请问怎么实现逻辑删除,请举个实例 好吗 谢谢

------解决方案--------------------
物理删除是从数据库中彻底删除,delete
我估计楼主的逻辑删除就是假删,这是个IsDelete 字段,默认为0 删除后 update 为1
前台得到数据的时候,
select * from tablename where IsDelete=0
------解决方案--------------------
SQL code

/*楼主所谓的逻辑删除,可以给数据库中的相关表增加Isdelete字段,默认为 0 删除后置为 1
前台得到数据的时候,把符合Isdelete的排除 在传给前台就行了*/
select * from tablename where Isdelete=0

------解决方案--------------------
一楼说的逻辑删除就是其实就是FOXBASE 或者FOXPRO中说的,delete命令操作的结果,FOX只是将被删除的记录做一个标识而已,要执行PACK命令之后,这些做过删除标识的记录才会被彻底删除,如果放弃删除,用RECALL命令即可恢复
------解决方案--------------------
我明白了,只要加一个字段就好了
字段为整型
如: int Falg
Falg 有两个值,
一个是逻辑删除后的值为0
另一个是正常数据值为1
假如 要删除某条记录,只需要把Falg的值改为0
查询时候 只需要
Select * From TableName Where Falg = 1