C#中执行包含ORACLE CLOB类型存储过程
2010-11-01 14:15
1031 查看
在处理CLOB字符字段时,如果直接将字符串传递给oracleparameter,在字符串长度超过4000是出现异常:
ORA-01460: 转换请求无法实施或不合理
因为Oracle字符最大长度为4000,需要构造一个OracleClob对象,将要传递的字符串写入OracleClob。如下代码所示:
ORA-01460: 转换请求无法实施或不合理
因为Oracle字符最大长度为4000,需要构造一个OracleClob对象,将要传递的字符串写入OracleClob。如下代码所示:
command.CommandText = "select * from table(AnalyseBuffer(:gml))"; OracleClob clob = new OracleClob(command.Connection, true, false); //gmlPolygon为大于4000字符长度的字符串. char[] cs= gmlPolygon.ToCharArray(); clob.Write(cs, 0,cs.Length); OracleParameter para = new OracleParameter("gml", OracleDbType.Clob,clob, ParameterDirection.Input); command.Parameters.Insert(0, para); DataSet ds = new DataSet(); OracleDataAdapter ad = new OracleDataAdapter(command); ad.Fill(ds);
相关文章推荐
- C#执行oracle返回游标类型的存储过程
- C#执行oracle返回游标类型的存储过程
- C#+Oracle开发中执行存储过程问题
- 简单搞一下 System.Data.OracleClient调用带blob、clob等大字段类型参数的存储过程!
- oracle 执行包含update语句的存储过程并获取结果记录
- C#与Oracle开发中执行存储过程问题
- C#调用Oracle的存储过程,其参数为数组类型
- Oracle.DataAccess.Client.OracleException ORA-00600: 内部错误代码,通过C#执行上面存储过程报错,而通过PLSQL执行不报错。谁知道原因。
- C#调用Oracle的存储过程,其参数为数组类型”中的­Package
- C#调用Oracle的存储过程,其参数为数组类型
- C# 调 SQL server与Oracle存储过程执行差异对比
- C#与Oracle开发中执行存储过程问题
- C#+Oracle开发中执行存储过程问题
- C#调用oracle存储过程自定义表类型
- oracle 执行包含update语句的存储过程并获取结果记录
- oracle 执行包含update语句的存储过程并获取结果记录
- C#中执行存储过程并在SQL server中调试
- 赋予oracle执行存储过程权限
- C#代码执行过程;值类型和引用类型;深拷贝和浅拷贝
- 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值