今天说一个小小的功能,假性删除。
当我们在删除一条信息时,过一段时间还想找到这条信息的记录,在页面上不显示,但在数据库里能查得到,那么我们就不能真正的删除掉这条信息,那么该怎样做到呢?
第一步,我们需要给这个表新增加一个字段叫做Status,来存放这条信息的状态,可以默认给个“1”为正常,“0”为已删除,这个字段int类型或varchar类型皆可。
第二步,我们先写一个T_SQL语句“select 状态 from 表名 where 主键ID=1”,获取到id为4的这个条信息的状态是多少。
给个变量接受获取到的状态,判断状态是1还是0。
如果为0则写个修改语句,修改信息的状态为1。
update 表名set 状态='0' where 主键ID=4。
当然,状态已经是1的时候可以直接return一个提示咯!看你心情想怎么返回了。。。。。
public int DelNextInforDo(int CallId) { string sql = "select NextIsDel from Call_NextInfor where NextId =" + CallId; DbCommand cmd = db.GetSqlStringCommand(sql); string statusid = db.ExecuteScalar(cmd).ToString(); string str = ""; if (statusid == "1") { str = "update Call_NextInfor set NextIsDel = '0' where NextId =" + CallId; } else { str = "update Call_NextInfor set NextIsDel = '1' where NextId =" + CallId; } DbCommand scmd = db.GetSqlStringCommand(str); int i = db.ExecuteNonQuery(scmd); return i; }
有不懂的欢迎提问哦~