当前位置:编程学习 > C#/ASP.NET >>

批量更新数据

OracleDataBase or = new OracleDataBase();
            or.OracleConnectString("bpos", "sa", "sa");
       
            OleDbConnection conn = new OleDbConnection(or.OracleConnectionString);
            
            string Sql = "Select id from Key_DetailScan order by rowid";
            DataSet ds = new DataSet();
            OleDbDataAdapter Adapter = new OleDbDataAdapter(Sql, conn);
            OleDbCommandBuilder cb = new  OleDbCommandBuilder(Adapter);
            OleDbCommand upCmd = new OleDbCommand("update Key_DetailScan  set ID=@id ", conn);

            upCmd.Parameters.Add("@id", OleDbType.Integer, 8, "ID");

            Adapter.UpdateCommand = upCmd;
            Adapter.Fill(ds);
           
            for (int count =0; count <3483 ;)
                {

                    for (int i = 0; i <200; i++,count++)
                    {
                        ds.Tables[0].Rows[i].BeginEdit();
                        ds.Tables[0].Rows[i][0] = i;
                       
                        ds.Tables[0].Rows[i].EndEdit();
                    }
                    Adapter.Update(ds.Tables[0]);
                }
                ds.Tables[0].Clear();
                ds.Dispose();
                Adapter.Dispose();
                conn.Close();
现在的问题是在执行命令过程中,发生了一个或多个错误。
ORA-00904: 无效列名,我不知道错哪了,大家给看看,错哪了
--------------------编程问答-------------------- string Sql = "Select id from Key_DetailScan order by rowid"; 
rowid 不是有效的列名,这个貌似Oracle或者PL/SQL维护的东西吧。。 --------------------编程问答-------------------- 是不是这个列名输入错误或用上了系统关键字? --------------------编程问答-------------------- 仔细检查一下你的列名和数据库是否一致,有没有使用系统关键字,包括vs的系统关键字和数据库的系统关键字 --------------------编程问答-------------------- upCmd.Parameters.Add("@id", OleDbType.Integer, 8, "ID"); 

看一下你给@id赋得值是什么?"ID",有这个ID号吗? --------------------编程问答-------------------- --------------------编程问答-------------------- 可能是哪个参数写错了吧?对你这个连接的方式的代码不熟悉。 --------------------编程问答-------------------- 把代码都贴出来。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,