`

oracle9i环境运行10g下的sql脚本出现不兼容的问题

 
阅读更多

在oracle10g环境中运行没有任何问题,如下:

 

 

FOR C IN (SELECT * FROM TABLE(PKG_CMD_COMMON.F_SPLIT(P_IN_IDS_, ','))) LOOP
。。。。此处省略
END LOOP;

 但在9i执行中,会莫名其妙地报错 ORA-22905: cannot access rows from a non-nested table item无法从非嵌套表项访问行。

 

分析:

包pkg_cmd_common中的函数f_split返回的是type类型的自定义的数组type_varchar_array

 

在网上查知:oracle9i下需要cast转换

 

FOR C IN (SELECT * FROM TABLE(CAST(PKG_CMD_COMMON.F_SPLIT(P_IN_IDS_, ',') AS TYPE_VARCHAR_ARRAY))) LOOP
。。。。此处省略
END LOOP;

 

 

重新编译后不再报错,至此问题解决,在这里记录下。

 

分享到:
评论

相关推荐

    Oracle9i&10g编程艺术脚本

    "Oracle9i&10g编程艺术脚本"这个主题主要涵盖了这两代产品中的SQL语言、PL/SQL编程以及相关的数据库管理技巧。 1. SQL基础:SQL(结构化查询语言)是用于管理和处理关系数据库的标准语言。在Oracle9i和10g中,你...

    Oracle 9i & 10g编程艺术:深入数据库体系结构所附脚本

    《Oracle 9i & 10g编程艺术:深入数据库体系结构》是一本深受数据库管理员和开发者喜爱的经典著作。这本书全面地介绍了Oracle数据库的核心技术,包括数据库架构、SQL编程以及性能优化等方面的知识,旨在帮助读者深入...

    实验oracle9i升级到10g.pdf

    本文档详细阐述了从Oracle 9i升级到Oracle 10g的过程,特别聚焦于在HPUX操作系统下的升级流程。此次升级的目的在于迁移现有的Oracle 9.2.0.1数据库到更先进的Oracle 10.2.0.1版本,以利用后者带来的性能提升、新功能...

    oracle 9i pl/sql程序设计笔记

    **标题与描述**:本文档围绕“Oracle 9i PL/SQL程序设计笔记”这一核心主题,深入探讨了PL/SQL语言的基础知识及其在Oracle 9i数据库环境中的应用。 **关键词**:Oracle 9i、PL/SQL #### PL/SQL程序结构详解 **2.1...

    Oracle 9i SQL基本概念

    这对于编写复杂的SQL脚本非常有用。 #### 9. 使用iSQL*Plus 要使用iSQL*Plus,首先需要连接到Oracle数据库。连接后,可以输入SQL命令并执行它们。此外,iSQL*Plus还支持批处理模式,允许用户一次执行多个SQL命令。...

    Oracle 9i &10g编程艺术脚本

    10. **性能调优**: Oracle 10g引入了自动工作负载库(AWR)和SQL Tuning Advisor,这些工具在脚本中可能有所体现,帮助你了解如何诊断和解决性能问题。 总的来说,"Oracle 9i &10g编程艺术脚本"是一份宝贵的资源,...

    数据库oracle9i 32位升级到oracle10g 64位操作方式

    ### 数据库Oracle 9i 32位升级到Oracle 10g 64位的操作方式 #### Oracle升级概述 本文旨在提供一个详尽的指南,帮助用户将现有的Oracle 9.2.0.1版数据库(运行在32位操作系统上)升级至Oracle 10.2.0.1版数据库...

    oracle9i精简版本(客户端)

    总的来说,Oracle9i精简版客户端是一个高效、轻便的数据库管理工具,适合于对数据库操作需求不复杂,但又需要稳定连接Oracle数据库的环境。它降低了对硬件资源的要求,同时也简化了维护和管理,对于小型企业或个人...

    oracle9i的rman全备在10g上的恢复

    在"oracle9i_10g.txt"这个文件中,可能会包含更具体的备份脚本、恢复步骤或其他与这个主题相关的详细信息。阅读和理解这些内容将有助于更深入地了解整个恢复过程。如果你遇到了任何问题,可以参考Oracle官方文档或...

    在Oracle 9i下的display_cursor脚本

    `display_cursor_9i.sql`这个文件很可能是用来在Oracle 9i环境中执行该功能的SQL脚本。在使用这个脚本之前,你需要确保你有适当的权限,并且知道如何在SQL*Plus或其他数据库管理工具中运行SQL脚本。 使用`DISPLAY_...

    oracle 9I.rar

    综上所述,Oracle 9I客户端压缩包包含了运行和管理Oracle数据库所需的关键工具,让用户能够在不部署完整数据库服务器的情况下,实现与Oracle服务器的连接和数据操作。对于开发人员、DBA以及需要与Oracle数据库交互的...

    Oracle9i客户端精简版与PLSQL工具

    在安装和配置Oracle9i客户端精简版时,需要注意兼容性问题,确保它与目标Oracle服务器的版本相匹配。同时,正确设置网络配置,如TNSNAMES.ORA文件,以便客户端能够找到并连接到服务器。对于PL/SQL Developer,需要...

    Migrate from Oracle 9i RAC to 10g RAC

    - **升级路径**:从Oracle 9i RAC升级到10g RAC可以通过手动运行Oracle提供的SQL升级脚本或者使用Oracle推荐的方法——Database Upgrade Assistant (DBUA)来完成。 - **DBUA介绍**:DBUA是Oracle Database 10g中新增...

    Oracle9i客户端精简版

    Oracle9i客户端精简版是Oracle公司为满足用户在不安装完整数据库服务器的情况下,进行数据库查询、应用开发和测试等需求而设计的一款轻量级工具。这个版本包含了连接Oracle数据库的基本组件,如Oracle Net Services...

    Linux下oracle9i安装需要的补钉包

    2. **安装环境准备**:安装前需要禁用Selinux和Swap分区,因为Oracle 9i可能与这些功能不兼容。此外,创建一个专门的Oracle用户和组,例如`oracle`,并给予适当的权限。 3. **安装依赖**:Oracle 9i需要一些库文件...

    Linux下Oracle 9i 安装文档

    在Linux环境下安装Oracle 9i是一项技术性强且需要细致操作的任务。Oracle 9i是一款功能强大的关系型数据库管理系统,尤其适用于大型企业级应用。在这个过程中,我们不仅需要了解Linux操作系统的基本操作,还需要对...

    Oracle9i_SQL与PLSQL使用参考

    ### Oracle9i SQL与PL/SQL使用参考:深入解析与应用指南 #### 一、Oracle数据库基础概览 Oracle9i作为一个重要的企业级数据库系统,其核心能力在于提供高效的数据存储与检索服务。《Oracle9i_SQL与PLSQL使用参考》...

    Oracle 9i OCA PPT

    Oracle 9i OCA(Oracle Certified Associate)是Oracle公司针对初学者推出的数据库管理认证,它为想要进入数据库领域的专业人士提供了一个坚实的起点。本PPT课程旨在深入讲解Oracle 9i数据库管理系统的基础知识,...

    oracle9i enterprise manager

    1. **安装与配置**:首先需在目标服务器上安装Oracle 9i数据库软件,然后通过特定的脚本或向导安装EM组件,并进行必要的网络和安全性配置。 2. **日常管理**:利用EM的图形界面,进行数据库的常规管理,如创建表...

    Oracle9i 重装

    如果重装是因为旧数据库出现问题,你需要将旧数据迁移到新的Oracle9i实例中。这可以通过备份恢复、导入导出、SQL*Loader等方式完成。 以上是Oracle9i重装的详细流程,每个步骤都需要细心操作,确保数据库的稳定性和...

Global site tag (gtag.js) - Google Analytics