用SqlDataAdapter.update(),不过SqlDateAdapter要写UpdateCommand的Update语句.具体的可以看帮助文档

解决方案 »

  1.   

    hjf1223(学点有技术含量的!) 用设计器生成
      

  2.   

    参考:
    SqlDataAdapter SqlDa = new SqlDataAdapter(strSel,myconn);
    SqlCommandBuilder SqlCd = new SqlCommandBuilder(SqlDa);
    SqlDa.Update(ds,"table");
      

  3.   

    你在建立dataadapter的时候应该能看到最后设计器自动带你添加相关语句,如
    已生成SELECT语句
    已生成INSERT语句
    ......等
    这样你就可以在代码里面加入
    da.update(dataset,"table");
    这样就能更新了
      

  4.   

    try
    {
    oracleConnection1.Open();
    System.Data.OracleClient.OracleDataAdapter ora_adp = new System.Data.OracleClient.OracleDataAdapter("select * from clientregiste",oracleConnection1);
    new System.Data.OracleClient.OracleCommandBuilder(ora_adp);
    DataSet dstobj = new DataSet();
    ora_adp.Fill(dstobj,"originally");
    System.Data.DataRow row = dstobj.Tables["originally"].Rows[1];
    row.Delete();
    dstobj.AcceptChanges();
    ora_adp.Update(dstobj,"originally");
    oracleConnection1.Close();
    }
    catch(Exception ora_err)
    {
    Label1.Text = ora_err.Message;
    }
    finally
    {
    oracleConnection1.Close();
    }
    大家看看这个写得有什么问题。我可真是没法了。
      

  5.   

    try
    {
    oracleConnection1.Open();
    System.Data.OracleClient.OracleDataAdapter ora_adp = new System.Data.OracleClient.OracleDataAdapter("select * from clientregiste",oracleConnection1);
     OracleCommandBuilder objCommandBuilder=
    new System.Data.OracleClient.OracleCommandBuilder(ora_adp);
    ora_adp .DeleteCommand = objCommandBuilder.GetDeleteCommand();
    ora_adp .InsertCommand = objCommandBuilder.GetInsertCommand();//如果只是删除操作后更新,
    此句和下面一句可以不要
    ora_adp .UpdateCommand = objCommandBuilder.GetUpdateCommand();//DataSet dstobj = new DataSet();
    ora_adp.Fill(dstobj,"originally");
    System.Data.DataRow row = dstobj.Tables["originally"].Rows[1];
    row.Delete();
    dstobj.AcceptChanges();
    ora_adp.Update(dstobj,"originally");
    oracleConnection1.Close();
    }
    catch(Exception ora_err)
    {
    Label1.Text = ora_err.Message;
    }
    finally
    {
    oracleConnection1.Close();
    }
      

  6.   

    这个错误信息是什么意思?“/数据提交”应用程序中的服务器错误。
    --------------------------------------------------------------------------------Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information. 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information.源错误: 
    行 62:  System.Data.OracleClient.OracleDataAdapter ora_adp = new System.Data.OracleClient.OracleDataAdapter("select * from clientregiste",oracleConnection1);
    行 63:  System.Data.OracleClient.OracleCommandBuilder objCommandBuilder = new System.Data.OracleClient.OracleCommandBuilder(ora_adp);
    行 64:  ora_adp .DeleteCommand = objCommandBuilder.GetDeleteCommand();
    行 65:  DataSet dstobj = new DataSet();
    行 66:  ora_adp.Fill(dstobj,"originally");
     源文件: c:\inetpub\wwwroot\数据提交\webform1.aspx.cs    行: 64 堆栈跟踪: 
    [InvalidOperationException: Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information.]
       System.Data.OracleClient.OracleCommandBuilder.BuildWhereClause(DataTableMapping mappings, DataRow dataRow, StringBuilder builder, IDbCommand command, Int32 parameterCount, Boolean isupdate) +790
       System.Data.OracleClient.OracleCommandBuilder.BuildDeleteCommand(DataTableMapping mappings, DataRow dataRow) +91
       System.Data.OracleClient.OracleCommandBuilder.base_GetDeleteCommand() +27
       System.Data.OracleClient.OracleCommandBuilder.GetDeleteCommand() +5
       数据提交.WebForm1.Button1_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\数据提交\webform1.aspx.cs:64
       System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
       System.Web.UI.Page.ProcessRequestMain() +1277 
    --------------------------------------------------------------------------------
    版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573
      

  7.   

    这是什么意思?Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information
      

  8.   

    在改动DataSet内容时也需要进行关系键的处理,以确保数据表之间的键值关系。