首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

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

2013-01-19 
asp.net mvc同时删除2个表的信息public int deleteByKey(String key){int flag 0string str delete

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个表的信息

热点排行