oracle CLOB 类型字符 读取 的时候为什么 总是报一个错 ORA-00911: 无效字符

yyxu123 2007-08-03 05:14:45
相关代码

/// <summary>
/// 返回CLOB数据类型的字符串形式
/// </summary>
/// <param name="sql">查询sql语句</param>
/// <returns>查询到的值</returns>
public string GetSealString(string sql)
{
OracleCommand oraCmd = new OracleCommand();
string ContentBySeal = string.Empty;
try
{
OraOpen();
oraCmd.Connection = ORAConn;
oraCmd.CommandText = sql;

OracleDataReader reader = oraCmd.ExecuteReader();

if (reader.Read())
{
OracleLob myLob = reader.GetOracleLob(0);
StreamReader Sreader = new StreamReader(myLob, Encoding.Unicode);

int actual = 0;
char[] content = new char[6000];
while ((actual = Sreader.Read(content, 0, content.Length)) > 0)
{
ContentBySeal = new string(content, 0, actual);
}
}
}
catch (OracleException oex)
{
throw new ApplicationException(oex.Message);
}
finally
{
OraClose();
}
return ContentBySeal;
}

/// <summary>
/// 获取CLOB字符类型的字符串格式
/// </summary>
/// <returns></returns>
private string GetVise(string BILLNUM,string index)
{
string getCmd = "Select DOCSIGNPIC from ELECSEAL where APPTYPE='MATRECBILL' and SEALGRP like '_"+index+"%' and BILLNUM='" + BILLNUM + "' order by SEALGRP asc;";
string seal = OracleDB.GetSealString(getCmd);
return seal;
}
...全文
270 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyxu123 2007-08-03
  • 打赏
  • 举报
回复
谢谢了。。sql语句是这样的
Select DOCSIGNPIC from ELECSEAL where APPTYPE='MATRECBILL' and SEALGRP like '_1%' and BILLNUM='1001' order by SEALGRP asc;
patann 2007-08-03
  • 打赏
  • 举报
回复
不如把sql语句连变量的值都打出来看看是什么值
yyxu123 2007-08-03
  • 打赏
  • 举报
回复
但是在sqlplus里面执行 可以查询出数据
yyxu123 2007-08-03
  • 打赏
  • 举报
回复
在执行 OracleDataReader reader = oraCmd.ExecuteReader();
的时候 总是报 ORA-00911: 无效字符

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧