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

问: C# 删除数据库中的信息时出现的有关问题

2012-05-22 
问: C# 删除数据库中的信息时出现的问题代码如下:C# codeSqlConnection conn SqlConn()string delStr

问: C# 删除数据库中的信息时出现的问题
代码如下:

C# code
SqlConnection conn = SqlConn();            string delStr = "delete GoodInfo where gNo = @no";      //删除命令语句            SqlCommand cmd = new SqlCommand(delStr, conn);               //添加参数并赋值            //cmd.Parameters.AddWithValue("@no",no);    //类型, 自动?            cmd.Parameters.Add("@no", SqlDbType.NChar, 10);            cmd.Parameters["@no"].Value = no;            int result = -1;            try            {                conn.Open();                result = cmd.ExecuteNonQuery(); //当 no = A006的时候,首次执行的时候,为什么会有两行受影响?                Console.WriteLine(result + "行受影响\n");            }            catch (Exception e)            {                Console.WriteLine("错误: " + e.Message);            }            finally            {                conn.Close();           //关闭与数据库的连接            }            return result;


运行完之后, 数据库中的信息,也相应地被删除了, 
但我把 no 赋一个 数据库不存在的值的时候, select 一下, 刚才被删除的那条信息,又出现了,

Delete 没起作用,为什么会这样呢? 还是方法不对???

[解决办法]
光看你的代码没有问题,是不是程序别的地方又给添加上了。
[解决办法]
直接
delete GoodInfo where gNo = 'A006'
select * from GoodInfo where gNo = 'A006'
在数据库中执行下,看下结果

估计是你有触发器或有级联操作关系。。。

热点排行