首页新闻找找看学习计划

OracleDataAdapter.Update()

0
悬赏园豆:10 [已解决问题] 解决于 2013-07-02 22:19

 OracleDataAdapter.Update()写不进数据库也不报错。求帮助啊。。。。

public static void Adapter_updateDB(DataTable dt)
{
string sql_str = "insert into t_avgwindspeed(DATETIME,WINDMILLNUM,WINDSPEED,POWER)values(@DATETIME,@WINDMILLNUM,@WINDSPEED,@POWER)";
//string sql_str = "insert into t_avgwindspeed(DATETIME,WINDMILLNUM,WINDSPEED,POWER,TIMECELL)values(@DATETIME,@WINDMILLNUM,@WINDSPEED,@POWER,@TIMECELL)";
Connection = new OracleConnection(Conn_str);
OracleCommand com = new OracleCommand(sql_str,Connection);
com.Parameters.Add("@DATETIME", OracleDbType.Date, 32, "时间");
com.Parameters.Add("@WINDMILLNUM", OracleDbType.Varchar2, 32, "风机名");
com.Parameters.Add("@WINDSPEED", OracleDbType.Varchar2, 32, "风速");
com.Parameters.Add("@POWER", OracleDbType.Varchar2, 32, "功率");
//com.Parameters.Add("@TIMECELL", OracleDbType.Varchar2, 32, "时间间隔");
com.UpdatedRowSource = UpdateRowSource.None;
OracleDataAdapter da = new OracleDataAdapter();
da.InsertCommand = com;
Connection.Open();
da.Update(dt);
Connection.Close();
}

问题补充:

问题 我已找到。datarow rowstate的状态added是就可以。如果是excel读取的da.AcceptChangesDuringFill = false;

还有values(:DATETIME,:WINDMILLNUM,:WINDSPEED,:POWER,:TIMECELL)";Oracle不用@
com.Parameters.Add("WINDMI", OracleDbType.Varchar2, 32, "风机名");

code不是代码的主页 code不是代码 | 初学一级 | 园豆:43
提问于:2013-06-30 19:59
< >
分享
最佳答案
0
收获园豆:10
dudu | 高人七级 |园豆:39678 | 2013-06-30 20:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册