SqlCommandBuilder批量更新

以梦为马-不负韶华 2011-01-13 02:28:54
我用SqlCommandBuilder 实现的批量更新

代码如下:
public DataSet UpdateByDataSet(DataSet ds)
{
SqlConnection conn = new SqlConnection(connstr);
SqlDataAdapter myAdapter = new SqlDataAdapter();
SqlCommand myCommand = new SqlCommand("select * from t_ndjh", conn);
myAdapter.SelectCommand = myCommand;
SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
try
{
lock (this) //处理并发情况(分布式情况)
{
conn.Open();
myAdapter.Fill(ds, "a");
myAdapter.Update(ds,"a");
//conn.Close();
}
return ds;
}
catch (Exception err)
{
conn.Close();
return ds;
//throw new BusinessException(err);
}
}

调式过了,执行没有错误。

但是 数据库里的数据没有更新。。。还是原来的数据。。。

怎么回事呢?大家帮我看看是怎么回事?
...全文
147 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sage425 2011-01-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wxf163 的回复:]

SQL code
myAdapter.Update.UpdateCommand = new SqlCommand("UPDATE t_ndjh SET 列名= @contract ", conn);
myAdapter.UpdateCommand.Parameters.Add("@contract", SqlDbType.NVarChar, 15, "contract");
[/Quote]

1楼 这种做法 lz 好好看看
sage425 2011-01-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 kettle 的回复:]

你压根就没写更新语句,当然不会更新了
[/Quote]

恩 lz 你没有写更新语句
kettle 2011-01-13
  • 打赏
  • 举报
回复
你压根就没写更新语句,当然不会更新了
快溜 2011-01-13
  • 打赏
  • 举报
回复
myAdapter.UpdateCommand = myCommandBuilder .GetUpdateCommand();
conn.Open();
myAdapter.Update(ds);
王向飞 2011-01-13
  • 打赏
  • 举报
回复
myAdapter.Update.UpdateCommand = new SqlCommand("UPDATE t_ndjh SET 列名= @contract ", conn);
myAdapter.UpdateCommand.Parameters.Add("@contract", SqlDbType.NVarChar, 15, "contract");

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧