`
lixw
  • 浏览: 200848 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ORACLE语句在Java代码中执行时报错:ORA-00911: 无效字符

阅读更多

 

 <!-- 根据指定的信息包递归查询所有子信息包 -->
    <sql-query name="queryChildInfoPacks">
    	<!-- DB2 -->
    	<!--
    	<![CDATA[
    		with temptab(pack_id, seq, name, eff_Date, exp_date, pack_level, parent_pack_id, sts, mean) as
			(
			  select pack_id, seq, name, eff_Date, exp_date, pack_level, parent_pack_id, sts, mean
			  from info_pack
			  where pack_id=:aaa
			  union all
			  select son.pack_id pack_id, son.seq seq, son.name name, son.eff_Date eff_date, son.exp_date exp_date, 
			  son.pack_level pack_level, son.parent_pack_id parent_pack_id, son.sts sts, son.mean mean
			  from info_pack son ,temptab parent
			  where son.parent_pack_id = parent.pack_id
			) select {a.*} from temptab a;
    	]]>
    	-->
    	
    	<!-- ORACLE -->
    	<![CDATA[
    		select {a.*} from info_pack a start with a.parent_pack_id=:aaa 
    		connect by prior a.pack_id=a.parent_pack_id

    	]]>
		<return alias="a" class="cn.com.samueli.cuv.pojos.InfoPack"/>
    </sql-query>

 

问题描述:

      上面的代码是在实际应用递归查询时,配置在Hibernate的POJO配置文件中的一个查询,DB2没有问题,而ORACLE语句在Java代码中执行时报错:ORA-00911: 无效字符?

原因分析:

      原因是在针对Oracle的SQL语句末尾加上了分号的缘故,去掉就OK了。对于DB2中不存在这个问题。

分享到:
评论

相关推荐

    oracle特有的错误:ORA-01036:非法的变量名/编号

    在Oracle数据库系统中,"ORA-01036:非法的变量名/编号"是一个常见的错误,通常出现在PL/SQL代码或者SQL查询语句中,当你尝试使用一个不正确或者未定义的变量时,Oracle数据库会抛出这个错误。这个错误可能是由于...

    CLOB 字段类型报错 ORA-01704: 文字字符串过长的解决

    在Oracle数据库中,CLOB(Character Large Object)字段类型用于存储大量的文本数据,如XML文档、长篇文章或者大量字符数据。然而,当你尝试向CLOB字段插入数据时,如果超过了Oracle规定的最大限制,就会遇到“ORA-...

    oracle ora-各种常见java.sql.SQLException归纳

    这种错误通常是由于开发者在编写 CASE 语句时,忘记了某个分支语句,导致 Oracle 无法执行 CASE 语句。解决这个错误的方法是,检查 CASE 语句中的分支语句是否正确,确保分支语句存在于 CASE 语句中。 ORA-06531: ...

    ORA-00904: "WM_CONCAT": 标识符无效

    在Oracle数据库中,"ORA-00904"是一个常见的错误代码,它表示尝试引用一个不存在或无效的标识符。在这个场景下,错误信息提到的是"WM_CONCAT"函数,这表明在Oracle 19c数据库环境中,用户尝试使用WM_CONCAT函数,但...

    ORA-00904 WMSYS.WM_CONCAT标识符无效解决方案

    在Oracle数据库中,"ORA-00904"是一个常见的错误代码,它表示尝试引用一个不存在或无效的标识符。在这种情况下,错误是针对"WMSYS.WM_CONCAT"函数的,这是一个在某些Oracle版本中提供的聚合函数,用于字符串连接。...

    oracle错误及解决方法

    - **ORA-00911:无效字符**:检查SQL语句中的字符是否合法,特别是字符串常量的引号。 4. 预防措施 - **定期备份**:定期进行数据库备份,以防数据丢失。 - **性能监控**:通过工具如DBA_HIST views监控数据库...

    ora 错误全集 全部 ora0000-ora32999

    然而,在日常运维过程中,我们可能会遇到各种各样的错误代码,这些错误代码通常以“ORA-”开头,表示Oracle数据库在执行操作时遇到了问题。"ORA 错误全集 全部 ora0000-ora32999"是一个非常实用的资源,它包含了从...

    使用Oracle遇到的问题

    ORA-00911: 无效字符; 这种情况经常是因为我sql语句后面多加了一个 “;” Oracle 报错ORA-00904: 标识符无效 ,但是列名和表名没有写错 一般情况下,标识符错误是因为:语句中的列名在表中不存在,修改sql语句或者...

    Mybatis出现ORA-00911: invalid character的解决办法

    "ORA-00911: invalid character"是Oracle数据库返回的一个错误代码,表示在SQL语句中遇到了一个无效的字符。这个错误通常意味着SQL语句中包含了一个数据库不识别或者不允许的字符。在Mybatis中,这个问题可能由多种...

    Oracle21个预定义异常

    - **场景示例**:在执行预期返回单一结果的SELECT INTO语句时,若结果集中包含多行数据,将引发此异常。 #### 20. VALUE_ERROR - **异常描述**:赋值操作中,目标变量长度不足以容纳数据时触发。 - **错误代码**:...

    oracle数据库的clob大字段在jdbc中的处理方式

    在Java中,当我们需要通过JDBC(Java Database Connectivity)接口与Oracle数据库交互时,处理CLOB字段可能会遇到一些挑战。这篇文档将详细阐述如何在JDBC中有效地读取和操作Oracle数据库的CLOB字段,并将其转换为...

    Oracle常用异常代码

    在执行CASE语句时,没有匹配到任何WHEN子句,并且也没有提供ELSE子句的情况下触发此异常。 **解决方法:** - 添加一个ELSE子句以处理所有情况。 - 如果不希望处理未匹配的情况,则可以忽略此异常。 #### 3. ...

    oracle脚本 常用的数据库sql及pl\sql语言

    本文将深入探讨Oracle中的SQL和PL/SQL语言,以及它们在数据库管理和开发中的应用。 一、SQL基础 SQL是用于管理和操作关系型数据库的标准语言。在Oracle中,SQL用于查询、插入、更新和删除数据,创建和修改表结构,...

    【DATAGUARD】物理dg配置客户端无缝切换 (八.4)--ora-16652 和 ora-16603错误

    - **启用 Fast-Start Failover**: 需要在Data Guard Broker中正确配置相关参数,以确保在发生故障时能够快速切换。 - **监控**: 必须对主库和物理备库的状态进行持续监控,以检测任何可能引发故障切换的异常情况。 -...

    Oracle错误代码及解决方法

    5. ORA-00911:无效字符。当SQL语句中包含数据库不识别的字符时,会出现此错误。仔细检查SQL语句,找出并删除非法字符。 6. ORA-01555:快照过旧。这是因为回滚段空间不足,导致无法读取旧版本的数据。增加回滚段...

    oracle 数据库错误一览表

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在企业级应用中占据着重要的地位。在使用Oracle数据库的过程中,由于各种原因,用户可能会遇到各种错误。这篇内容将深入解析Oracle数据库的一些常见错误...

    Oracle 错误代码整理总结

    ORA-00911:无效字符 ORA-00917:缺少逗号 ORA-00918:未明确定义列 ORA-00922:丢失或无效的选项(表名等可能有空格) ORA-00923:未找到FROM关键字 ORA-00926:缺少value ORA-00933: SQL命令未正确结束 ORA-...

    Oracle 数据库常见问题诊断方法

    - 在分析 SQL 语句时查询数据字典表时发生错误。 - **原因**: - 这类错误通常与内存管理有关,可能是由于内存泄漏导致的。 - **措施**: - 如果偶尔出现,可以通过适当增加 `SHARE_POOL_SIZE` 参数值来尝试解决...

    oracle常用命令及错误类型(error message)

    5. ORA-00911:非法字符 - 解决:检查SQL语句中的语法,确保没有非法字符。 6. ORA-01017:用户名/口令无效 - 解决:确认登录凭证的正确性,包括大小写敏感性。 7. ORA-00942:表或视图不存在 - 解决:检查表或...

Global site tag (gtag.js) - Google Analytics