`
lixw
  • 浏览: 196558 次
  • 性别: 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-00911: 无效字符; 这种情况经常是因为我sql语句后面多加了一个 “;” Oracle 报错ORA-00904: 标识符无效 ,但是列名和表名没有写错 一般情况下,标识符错误是因为:语句中的列名在表中不存在,修改sql语句或者...

    Oracle 错误代码整理总结

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

    Oracle中转义字符的详细介绍

    最近工作中遇到一个需求,需要更新Oracle数据库中所有表的一个字段“flag”为“I”,语句为: update table_name set flag = 'I' “I”作为字符串,所以语句中I需要加上单引号。 由于数据库中有多张表,我不想一条...

    Oracle9i的init.ora参数中文说明

    说明: 在 SQL 语句中, 应避免使用繁琐的 NLS_SORT 进程。正常情况下, WHERE 子句中进行的比较是二进制的, 但语言比较则需要 NLSSORT 函数。可以使用 NLS_COMP 指定必须根据NLS_SORT 会话参数进行语言比较。 值范围:...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    她是Oracle ACE,也是OakTable(Oracle社区中著名的“Oracle科学家”的非正式组织)的成员,经常在技术会议上演讲。她的著作还包括 Expert Oracle Practices和Beginning Oracle SQL,博客主页是karenmorton....

    一个错误修复的运行存储过程。m:官方运行存储过程中有一个错误。 此文件修复了错误。-matlab开发

    发生Java异常: java.sql.SQLException: ORA-06550: 第 1 行,第 7 列: PLS-00306:调用“myproc”时参数数量或类型错误ORA-06550:第 1 行,第 7 列: PL/SQL:忽略语句 在 sun.jdbc.odbc.JdbcOdbc....

    Oracle自学(学习)材料 (共18章 偏理论一点)

    1-28 进程监控器(PMON) 1-29 检查点进程(CKPT) 1-30 归档进程(ARCn) 1-31 逻辑结构 1-32 执行一个 SQL 语句 1-33 小结 1-34 2 Oracle 服务器入门 目标 2-2 数据库管理工具 2-3 Oracle 通用安装程序 2-4 交互...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    其一、就业面广:全球前100强企业99家都在使用ORACLE相关技术,中国政府机构,大中型企事业单位都能有ORACLE技术的工程师岗位。 其二、技术层次深:如果期望进入IT服务或者产品公司(类似毕博、DELL、IBM等),...

    oracle详解

    导入/导出是ORACLE幸存的最古老的两个命令行工具,其实我从来不认为Exp/Imp是一种好的备份方式,正确的说法是Exp/Imp只能是一个好的转储工具,特别是在小型数据库的转储,表空间的迁移,表的抽取,检测逻辑和物理...

    go-ora:Pure Go Oracle客户端

    Go-ora 什么是新的: ... 不支持命名参数来定义参数,只需在SQL语句中输入':'+ parameter_name 与sql / database的集成是使用简单的形式完成的 用法: 有两种使用客户端的方法 A.使用sql / database接口

    jsp + oracle分页简单实用

    if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据 intPage = 1; } else{//将字符串转换成整型 intPage = java.lang.Integer.parseInt(strPage); if(intPage) intPage = 1...

    Oracle中文使用手册.pdf

    想在 sql 中执行 unix 命令时,把所有的命令前加一个!就可以, 或者 host( 用于 从 sql 从切换至 unix 环境中去) /*** 初次使用时注意 **** 运行角本时的命令: 先切换到 unix 环境下,cd $oracle_home cd ...

    向Oracle数据库的CLOB属性插入数据报字符串过长错误

    今天在项目中向数据库的CLOB属性插入一段篇文章(1000~2000)字就会报一个字符串过长的错误。 网上说用流来处理,没有这么做。这像是一个Bug,只要把插入的数据,默认扩充到2000以上就ok了。 下面是这段代码: if(...

    oracle文本导入导出工具-ozoradts

    - oz_ora_dts: Release 2.21 - Copyright (C) 2009 by Ozai ---------------------------------------------------------------------------- Usage: ozoradts -func keyword=value [,keyword=value,...] -func = ...

    jdbc基础和参考

    单向的一对多的关系,在进行关联关系的操作时,会执行不必要的update语句,所以,一般情况下,我们不会做单向一对多的映射。 inverse="true":让其中一方放弃对关联关系的维护 一般在做双向多对一(一对多)关联关系...

    Oracle数据库学习指南

    40.在oracle中限制返回结果集的大小 41.在远端如何建立standby数据库 42.怎样分析你的SQL语句的效率 43.自动备份Oracle数据库 44.总结SQL语句中的优化提示 45.使用Database Configuration Assistant安装...

    Oraclet中的触发器

    BEFORE 和AFTER指出触发器的触发时序分别为前触发和后触发方式,前触发是在执行触发事件之前触发当前所创建的触发器,后触发是在执行触发事件之后触发当前所创建的触发器。 INSTEAD OF 选项使ORACLE激活触发器,而...

    oracle实验报告

    在PL/SQL块中使用SELECT语句时注意几点: (1)SELECT语句必须含有INTO子句。 (2)INTO子句后的变量个数和位置及数据类型必须和SELECT命令后的字段名表相同。 (3)INTO子句后可以是简单类型变量或组合类型变量。 ...

Global site tag (gtag.js) - Google Analytics