SqlDataAdapter.Update(ds,"Zd");为什么我执行上面的语句不能更新到数据库 你确定就是这句话错误吗?把"zd"的引号去掉试试,你的zd应该是数据库连接变量吧? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没有报错吗?或者报的什么错?你用的存贮过程,那么应该是自己生成UpdateCommand的,那么请注意检查参数集的定义是否正确,你最好把你的代码贴出来。 给你一段我的代码 /// <summary> /// 把改动后的数据集保存到数据库 /// </summary> /// <param name="pDataSet">需要保存的数据集对应的数据库部分的查询代码</param> /// <param name="pDataSet">需要保存的数据集</param> /// <param name="tableName">数据集表名</param> /// <returns>操作状态</returns> public int DBSetDataSetToDataSource(string strSqlIn,DataSet pDataSet,string tableName) { if(pDataSet.Tables.Count<=0) { return 0; } System.Data.SqlClient.SqlDataAdapter pAdp=new SqlDataAdapter(strSqlIn,conn); System.Data.DataSet pTmpDataSet=new DataSet(); try { System.Data.SqlClient.SqlCommandBuilder pSqlComBuilder=new SqlCommandBuilder(pAdp); //pSqlComBuilder.QuotePrefix="["; //pSqlComBuilder.QuotePrefix="]"; pAdp.Fill(pTmpDataSet,tableName); //pTmpDataSet.AcceptChanges(); pTmpDataSet=pDataSet; //pTmpDataSet.AcceptChanges(); pAdp.Update(pTmpDataSet,tableName); } catch { return errordiffnum + 23; } return 0; } private System.Data.SqlClient.SqlDataAdapter adaZd=new SqlDataAdapter(); SqlCommand cmdUp=new SqlCommand();cmdUp.CommandText="YW_UpdateZdMain";cmdUp.CommandType=CommandType.StoredProcedure;cmdUp.Connection=DataAccessOrder.cn; cmdUp.Parameters.Add("@strXT",SqlDbType.VarChar,50,"XT");cmdUp.Parameters.Add("@strXX",SqlDbType.VarChar,200,"XX");cmdUp.Parameters.Add("@strBZ1",SqlDbType.VarChar,300,"BZ1");cmdUp.Parameters.Add("@strBZ2",SqlDbType.VarChar,300,"BZ2");cmdUp.Parameters.Add("@strBZ3",SqlDbType.VarChar,300,"BZ3");cmdUp.Parameters.Add("@strBZ4",SqlDbType.VarChar,300,"BZ4");cmdUp.Parameters.Add("@strZH",SqlDbType.Char,9,"ZH");adaZd.UpdateCommand=cmdUp;adaZd.Update(ds,"ZD"); //ds为数据集,原语句为:zd adaZd.SelectCommand=cmd; adaZd.Fill(ds,"Zd"); 我现在用上面的语句没有反应? 关键是这一句System.Data.SqlClient.SqlCommandBuilder pSqlComBuilder=new SqlCommandBuilder(pAdp); 数据库提交更新的问题,用sqlCommandBuider就可以了,如果用vs工具生成DataAdapter就不用sqlcommandbuider了,手写就要了,或者你自己写更新逻辑。 多线程数据传输问题 关于提取SQLserver服务器的问题 关于C# FileStream(读)的一点疑惑~ 请帮忙看看这句代码怎么理解,或者说执行顺序是什么? 研究一天了。 求助 请问在单击窗体右上角的“×”按钮时候的事件写在哪里? 大家好,我是新手有个问题想问下:就是跟踪调试""是指逐句编译吗,在vs.net按F11?还是其他的方法 关于接口实现中限定符的问题 求一小段delphi代码转C# C#操作IIS的问题 足彩复式投注的中奖匹配问题 我需要用EXCLE的命名空间.可是我在那里找excle.dll
你用的存贮过程,那么应该是自己生成UpdateCommand的,那么请注意检查参数集的定义是否正确,你最好把你的代码贴出来。
/// <summary>
/// 把改动后的数据集保存到数据库
/// </summary>
/// <param name="pDataSet">需要保存的数据集对应的数据库部分的查询代码</param>
/// <param name="pDataSet">需要保存的数据集</param>
/// <param name="tableName">数据集表名</param>
/// <returns>操作状态</returns>
public int DBSetDataSetToDataSource(string strSqlIn,DataSet pDataSet,string tableName)
{ if(pDataSet.Tables.Count<=0)
{
return 0;
}
System.Data.SqlClient.SqlDataAdapter pAdp=new SqlDataAdapter(strSqlIn,conn);
System.Data.DataSet pTmpDataSet=new DataSet(); try
{
System.Data.SqlClient.SqlCommandBuilder pSqlComBuilder=new SqlCommandBuilder(pAdp);
//pSqlComBuilder.QuotePrefix="[";
//pSqlComBuilder.QuotePrefix="]"; pAdp.Fill(pTmpDataSet,tableName);
//pTmpDataSet.AcceptChanges();
pTmpDataSet=pDataSet;
//pTmpDataSet.AcceptChanges();
pAdp.Update(pTmpDataSet,tableName);
}
catch
{
return errordiffnum + 23;
}
return 0;
}
SqlCommand cmdUp=new SqlCommand();
cmdUp.CommandText="YW_UpdateZdMain";
cmdUp.CommandType=CommandType.StoredProcedure;
cmdUp.Connection=DataAccessOrder.cn;
cmdUp.Parameters.Add("@strXT",SqlDbType.VarChar,50,"XT");
cmdUp.Parameters.Add("@strXX",SqlDbType.VarChar,200,"XX");
cmdUp.Parameters.Add("@strBZ1",SqlDbType.VarChar,300,"BZ1");
cmdUp.Parameters.Add("@strBZ2",SqlDbType.VarChar,300,"BZ2");
cmdUp.Parameters.Add("@strBZ3",SqlDbType.VarChar,300,"BZ3");
cmdUp.Parameters.Add("@strBZ4",SqlDbType.VarChar,300,"BZ4");
cmdUp.Parameters.Add("@strZH",SqlDbType.Char,9,"ZH");
adaZd.UpdateCommand=cmdUp;adaZd.Update(ds,"ZD"); //ds为数据集,原语句为:zd adaZd.SelectCommand=cmd;
adaZd.Fill(ds,"Zd");
我现在用上面的语句没有反应
?
System.Data.SqlClient.SqlCommandBuilder pSqlComBuilder=new SqlCommandBuilder(pAdp);