当前位置:编程学习 > C#/ASP.NET >>

一个非常具体的问题,请教C#/Winforms/Sql高手

窗体上有个DataGridView,显示一个表StuInfo中的数据,
我要实现添加、修改、删除的操作,添加修改都可以了,可是删除却很奇怪
我添加的语句大体是:

            //初始化参数:姓名
            SqlParameter sqlParName = new SqlParameter("@name", typeof(string));
            sqlParName.SourceColumn = "StuName";
            sqlParName.SourceVersion = DataRowVersion.Current;
            //初始化参数:性别
            SqlParameter sqlParSex = new SqlParameter("@易做图", typeof(bool));
            sqlParSex.SourceColumn = "StuSex";
            sqlParSex.SourceVersion = DataRowVersion.Current;
            //初始化参数:生日
            SqlParameter sqlParBirth = new SqlParameter("@birthday", typeof(DateTime));
            sqlParBirth.SourceColumn = "StuBirth";
            sqlParBirth.SourceVersion = DataRowVersion.Current;
            //初始化命令,并把参数都给他
            SqlCommand sqlCmdInsert = new SqlCommand();
            sqlCmdInsert.Connection = frmLogin.GetSqlConnection();
            sqlCmdInsert.CommandText = "insert into StuInfo values(@name, @易做图, @birthday)";
            sqlCmdInsert.Parameters.Add(sqlParName);
            sqlCmdInsert.Parameters.Add(sqlParSex);
            sqlCmdInsert.Parameters.Add(sqlParBirth);
            //把命令给数据适配器
            sqlAdapter.InsertCommand = sqlCmdInsert;
            sqlAdapter.Update(sqlData, "StuInfo");//适配器将用设置的命令更新数据库的指定表

            //插入到数据库后,为了得到数据库产生的自动编号,需要再从数据库中更新到数据集
            sqlData.Tables["StuInfo"].Clear();//清空数据集
            sqlAdapter.Fill(sqlData, "StuInfo");//从数据库填充数据集

修改类似,可是删除的时候却没有影响数据库,也就是Update函数的返回值是0,只有我再次执行一次插入或修改或删除的时候,上次的删除才会在数据库中实现,我百思不得其解?????

请教高手帮我指点迷津,最好能有解决问题的具体方法

我是第一次在csdn上发贴啊 --------------------编程问答-------------------- 每次使用使用数据库完毕后关闭连接(close方法) --------------------编程问答-------------------- 打开--使用--提交--关闭
每次的顺序 --------------------编程问答-------------------- Try to add the follow sentence after your "update" operation:

sqlAdapter.AcceptChanges();

补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,