c# 读取oracle clob字段,c#读取oracle的clob类型数据??急急急

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

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值