读书人

asp.net mvc与此同时删除2个表的信息

发布时间: 2013-01-19 11:41:36 作者: rapoo

asp.net mvc同时删除2个表的信息

        public int deleteByKey(String key)
{
int flag = 0;
string str ="";
deleteimg delimg = new deleteimg();
try
{
key = key.Replace(",", "','");
StringBuilder sql = new StringBuilder();//删除书的信息
sql.Append(" delete from BS_BookInfo where ");
sql.Append(" ID in ('").Append(key).Append("') ");
flag = DbHelperSQL.ExecuteSql(sql.ToString());

StringBuilder sqlst = new StringBuilder();//删除书的库存的信息
sqlst.Append(" delete from BS_StockInfo where ");
sqlst.Append(" BOOK_ID in ('").Append(key).Append("') ");
flag = DbHelperSQL.ExecuteSql(sql.ToString());

}
catch (Exception e)
{
throw e;
}
return flag;
}

一时想不明白,这像这样怎么同时删除2个表的信息 ASP.NET?MVC? delete sql
[解决办法]
开启事务 > 删从表 > 删主表 > Commit
(如果出错Rollback)
[解决办法]
执行了两个 DbHelperSQL.ExecuteSql();

sql 分别为
sqlst.Append(" delete from BS_StockInfo where ");
sql.Append(" ID in ('").Append(key).Append("') ");


sql.Append(" delete from BS_BookInfo where ");
sqlst.Append(" BOOK_ID in ('").Append(key).Append("') ");
[解决办法]
可以看成

DbHelperSQL.ExecuteSql("delete from BS_StockInfo where ID in ('").Append(key).Append("') ");



DbHelperSQL.ExecuteSql("delete from BS_BookInfo where BOOK_ID in ('").Append(key).Append("') ");

[解决办法]
一是开启 事物,先删从表,再删主表。
另一种是通过数据库来设置。
asp.net mvc与此同时删除2个表的信息

读书人网 >asp.net

热点推荐