删除一条数据库记录的解决方案

安全删除关联记录
本文介绍了一种在数据库操作中安全删除已关联外键记录的方法,通过标记而非直接删除来避免完整性问题。使用try-catch结构处理异常,并提供了一个具体的.NET实现示例。

在删除一条记录时有可能遇到一条记录已经被关联外键,那就应该将它其中的一个字段单独拿出来做标记,在程序中判断是否被删除,否则就真正的删除它。

使用try{}catch(){}方法。如果首次删除不成功,系统就会抛出异常,然后转到catch中,在其中的程序段中将其中的一个字段单独来做标记。

publicboolDeleteDevInfo(stringdeviceID)
...{
//returnSQLHelper.ExecuteCommon(CommandType.Text,DELETE+DEVICE_ID+deviceID,null);
booldelete=false;
try
...{
try
...{
delete
=SQLHelper.ExecuteCommon(CommandType.Text,DELETE+DEVICE_ID+deviceID,null);
}

catch(Exceptione)
...{
returnSQLHelper.ExecuteCommon(CommandType.Text,UPDATE_DEVICEID+DEVICE_ID+deviceID,null);
}

returndelete;
//returnSQLHelper.ExecuteCommon(CommandType.Text,UPDATE_DEVICEID+DEVICE_ID+deviceID,null);
}

catch(Exceptione)
...{
thrownewException("删除设备台账时失败!");
}

}
这里的SQLHelp类似于petShop中的Uility层中的SQLHelp,封装了底层于数据库的交互
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值