关于SqlDataAdapter.update的问题!

sanshisong 2006-06-29 05:39:05

protected void Page_Load(object sender, EventArgs e)
{
string source = "Data Source=SERVER;Initial Catalog=aaaa;User Id=sa;Password=beyond";
SqlConnection conn = new SqlConnection(source);
DataSet ds = new DataSet();
string sql = "select * from am";
SqlDataAdapter Dp = new SqlDataAdapter(sql, conn);
Dp.Fill(ds,"am");
DataRow dr = ds.Tables["am"].Rows[0];
dr.Delete();
Dp.Update(ds, "am");
DataGrid1.DataSource = ds.Tables["am"].DefaultView;

DataGrid1.DataBind();

}

--
当传递具有已删除行的 DataRow 集合时,更新要求有效的 DeleteCommand

代码如上,我刚学ASP.NET请大家帮下忙,回答下
...全文
344 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
amandag 2006-06-29
  • 打赏
  • 举报
回复
//上面错了
protected void Page_Load(object sender, EventArgs e)
{
string source = "Data Source=SERVER;Initial Catalog=aaaa;User Id=sa;Password=beyond";
SqlConnection conn = new SqlConnection(source);
DataSet ds = new DataSet();
string sql = "select * from am";
SqlDataAdapter Dp = new SqlDataAdapter(sql, conn);
//加这句
SqlCommandBuilder cmd = new SqlCommandBuilder(Dp);
Dp.Fill(ds,"am");
DataRow dr = ds.Tables["am"].Rows[0];
dr.Delete();
Dp.Update(ds, "am");
DataGrid1.DataSource = ds.Tables["am"].DefaultView;

DataGrid1.DataBind();

}
Eddie005 2006-06-29
  • 打赏
  • 举报
回复
System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection("连接字符串");
System.Data.SqlClient.SqlCommand cm = new System.Data.SqlClient.SqlCommand();
cm.Connection = cnn;
cm.CommandText = "select top 10 * from table1";
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(cm);

DataTable dt = new DataTable();
da.Fill(dt);
da.FillSchema(dt,System.Data.SchemaType.Mapped);//这是必须的,要载入数据表结构


//下面遍历和更新数据
foreach(DataRow row in dt.Rows)
row["theDate"] = DateTime.Now;

//下面重新写会数据库
System.Data.SqlClient.SqlCommandBuilder cb = new System.Data.SqlClient.SqlCommandBuilder(da);//这句看起来没什么作用,但实际上很关键,如果没有这个就不能用da.Update方法
cnn.Open();
da.Update(dt);
cnn.Close();
amandag 2006-06-29
  • 打赏
  • 举报
回复
string source = "Data Source=SERVER;Initial Catalog=aaaa;User Id=sa;Password=beyond";
SqlConnection conn = new SqlConnection(source);
DataSet ds = new DataSet();
string sql = "select * from am";
SqlDataAdapter Dp = new SqlDataAdapter(sql, conn);
SqlCommandBuilder cmd = new SqlCommandBuilder(da);
Dp.Fill(ds,"am");
DataRow dr = ds.Tables["am"].Rows[0];
dr.Delete();
Dp.Update(ds, "am");
DataGrid1.DataSource = ds.Tables["am"].DefaultView;

DataGrid1.DataBind();
jimu8130 2006-06-29
  • 打赏
  • 举报
回复
你设置下dataadapter的DeleteCommand属性啊
3tzjq 2006-06-29
  • 打赏
  • 举报
回复
//...
SqlDataAdapter Dp = new SqlDataAdapter(sql, conn);
SqlCommandBuilder scd = new SqlCommandBuilder(Dp);
//...

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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