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 "";
}
OracleLob lob;
OracleTransaction ts= null;
OracleConnection conn = null;
OracleCommand cmd = null;
OracleDataReader dr = null;
string strSql = string.Empty;
string content = string.Empty;
string CONNECTSTRING = "";
try
{
conn = new OracleConnection(CONNECTSTRING);
conn.Open();
ts= conn.BeginTransaction();
cmd = new OracleCommand(strSql,conn, ts);
cmd.CommandText = "";
dr = cmd.ExecuteReader();
dr.Read();
while(dr.Read())
{
lob = dr.GetOracleLob(0);
if(lob!=OracleLob.Null)
{
content = lob.Value.ToString();
content = "";
byte[] buffer = System.Text.Encoding.Unicode.GetBytes(content);
lob.Write(buffer, 0, buffer.Length);
}
}
ts.Commit();
}
catch(Exception ex)
{
}
finally
{
dr.Close();
conn.Close();
cmd.Dispose();
}
OracleLob tempLob = (OracleLob)cmd.Parameters[0].Value;
tempLob.BeginBatch(OracleLobOpenMode.ReadWrite);
tempLob.Write(tempbuff,0,tempbuff.Length);
tempLob.EndBatch();
作者: wuyq11
发布时间: 2010-09-25