如何通过c#读取oracle数据库中的long类型字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过c#读取oracle数据库中的long类型字段相关的知识,希望对你有一定的参考价值。

我遇到一个问题,如何通过c#读取oracle数据库中的long类型字段,我现在读取直接显示是\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052\fonttbl\f0\fmodern\fprq1\fcharset134 \'b7\'c2\'cb\'ce_GB2312;\f1\froman\fprq2\fcharset0 Times New Roman;\f2\fnil\fcharset134 \'cb\'ce\'cc\'e5;
\viewkind4\uc1\pard\nowidctlpar\fi560\sl-600\slmult0\qj\kerning2\f0\fs28\'d7\'ea\'be\'ae\'b9\'a4\'b3\'cc\'bc\'bc\'ca\'f5\'b9\'ab\'cb\'be\'d7\'e9\'bd\'a8\'d3\'da\f1 1997\f0\'c4\'ea\f1 5\f0\'d4\'c2\'a3\'ac\'ca\'c7\'d2\'bb\'bc\'d2\'bc\'af\'d7\'ea\'be\'ae\'b8\'df\'d0\'c2

应该如何转换成正确的文字哪?拜托各位大侠了!
δCat 可以在描述详细些吗?谢谢了

这就是正确的内容, 只是,你存储的格式是 WORD 文件或 RTF文件吧

你可以用 byte[] 方式读取, 然后直接保存成文件
参考技术A 你是用的OracleDataAdapter da = new OracleDataAdapter(sql, conn);吗?那样好像直接取出来直接ToString()不正常吗?

oracle中如何将long型的数据转换为char型

oracle中的long类型即clob类型,可用to_char函数转换成char类型。
使用中注意事项:
1、实际上处理CLOB字段的时候,直接TO_CHAR,当长度超过4000的时候,会报错,提示列被截取;
2、直接使用SUBSTR对CLOB字段进行截取,是不能起到任何作用的;
3、可以使用dbms_lob.substr(clobcolumn,4000),对CLOB字段进行截取;截取的长度是4000还是2000根据存储的是汉字和数据决定长度。
参考技术A LONG类型列不能用大部分SQL函数。建议ORACLE别用LONG转换可以INSERT 方法:含有LONG的表table_with_long需要创建个有CHAR的表:table_with_varcharbeginfor cv in ( select col_long from table_with_long)loopif instr(cv.col_long,'key_word') > 0 then本回答被提问者采纳

以上是关于如何通过c#读取oracle数据库中的long类型字段的主要内容,如果未能解决你的问题,请参考以下文章

使用.NET读取oracle表,一个LONG类型的列总是返回空字符串,如何解决?

mybatis怎么讲long映射成oracle中的number类型

oracle修改字段类型由varchar2修改为clob类型

oracle中如何将long型的数据转换为char型

如何更新 Oracle 中的“长”数据类型?

oracle 如何把long类型转换成字符类型