我想将已有的oracle的blob字段更新,更新后提示成功,但是数据没有改变,请高手能给出一个可以运行的例子不,我万分感谢!

解决方案 »

  1.   

    public static string Update_Clob(string strTable, string strFieldName, string strWhere, string strText) 
            { 
                try 
                { 
                    string strCon = ""; 
                    OracleConnection Con = new System.Data.OracleClient.OracleConnection(strCon); 
                    Con.Open();                 string cmdText = " update " + strTable + " set " + strFieldName + " =  :pb  " + strWhere; 
                    OracleCommand cmd = new OracleCommand(cmdText, Con); 
                    OracleParameter op = new OracleParameter("pb", OracleType.Clob); 
                    op.Value = strText; 
                    cmd.Parameters.Add(op); 
                    cmd.ExecuteNonQuery(); 
                    Con.Close(); 
                } 
                catch (Exception ex) 
                { 
                    return ex.Message; 
                } 
                return ""; 
            } http://topic.csdn.net/u/20091015/15/48c36f95-8223-4180-938d-2895ad973f52.html
      

  2.   

    public   void   RunOracleTransaction(string   myConnString)   //这个链接字符串要你自己写一下
      {   
            OracleConnection   myConnection   =   new   OracleConnection(myConnString);   
            myConnection.Open();   
        
            OracleCommand   myCommand   =   myConnection.CreateCommand();   
            OracleTransaction   myTrans;   
        
            //   Start   a   local   transaction   
            myTrans   =   myConnection.BeginTransaction(IsolationLevel.ReadCommitted);   
            //   Assign   transaction   object   for   a   pending   local   transaction   
            myCommand.Transaction   =   myTrans;   
        
            try   
            {   
                myCommand.CommandText   =   "INSERT   INTO   Dept   (DeptNo,   Dname,   Loc)   values   (50,   'TECHNOLOGY',   'DENVER')";   
                myCommand.ExecuteNonQuery();   
                myCommand.CommandText   =   "INSERT   INTO   Dept   (DeptNo,   Dname,   Loc)   values   (60,   'ENGINEERING',   'KANSAS   CITY')";   
                myCommand.ExecuteNonQuery();   
                myTrans.Commit();   
                Console.WriteLine("Both   records   are   written   to   database.");   
            }   
            catch(Exception   e)   
            {   
                myTrans.Rollback();   
                Console.WriteLine(e.ToString());   
                Console.WriteLine("Neither   record   was   written   to   database.");   
            }   
            finally   
            {   
                myConnection.Close();   
            }   
      }