众所周知,程序的错误一般情况下分为两类:编译错误和运行时错误。其中运行时错误被称为异常。PL/SQL语句块中处理异常的部分即为异常处理部分。在异常处理部分,可以指定当特定异常发生时所采取的动作。...本文我们就来聊一聊PL/SQL异常处理的那些事儿。 ? PL/SQL有两种类型的异常:内置异常和用户自定义异常。其中,内置异常又分为预定义异常和非预定义异常。...上述NO_DATA_FOUND即为Oracle预定义异常。 二、 用户自定义异常 通常,在自己的程序里,也许需要处理与所写程序相关的问题。例如,在上个语句块中,需要输入员工编号。...RAISE_APPLICATION_ERROR是oracle提供的一种特殊的内置过程,允许编程人员为特定应用程序创建有意义的错误信息。...这时可以通过EXCEPTION_INIT编译指令进行错误代码和名称的关联。当PL/SQL语句块的可执行部分出现某个运行错误时,会抛出不同类型的异常。
任何ORACLE错误(报告为ORA-xxxxx形式的Oracle错误号)、PL/SQL运行错误或用户定义条件(不一写是错误),都可以。...1.1 异常处理概念 异常情况处理(EXCEPTION)是用来处理正常执行过程中未预料的事件,程序块的异常处理预定义的错误和自定义错误,由于PL/SQL程序块一旦产生异常而没有指出如何处理时,程序就会自动终止整个程序运行...一种为用户自定义异常,内部异常是执行期间返回到PL/SQL块的ORACLE错误或由PL/SQL代码的某操作引起的错误,如除数为零或内存溢出的情况。...用户自定义异常由开发者显示定义,在PL/SQL块中传递信息以控制对于应用的错误处理。 每当PL/SQL违背了ORACLE原则或超越了系统依赖的原则就会隐式的产生内部异常。...因为每个ORACLE错误都有一个号码并且在PL/SQL中异常通过名字处理,ORACLE提供了预定义的内部异常。如SELECT INTO 语句不返回行时产生的ORACLE异常NO_DATA_FOUND。
初学Apex的时候,老是会受到一个这样的困扰,它到底有什么系统变量?我该如何好好的利用他们!...很明显: APP_ID ; 表示本应用的Application_id 在PL/SQL或者SQL Expresstion可以直接用:APP_ID引用 APP_ALIAS : 表示当前APP的应用别名,可以在应用编辑页面设置...(可以用在page的查询SQL语句中) :APP_PAGE_ID PL/SQL代码,比如process :APP_PAGE_ID PL/SQL 直接带V函数引用 NV('APP_PAGE_ID') 放在...除了上面几个很常用的以外,APEX还提供了下面43个系统变量,请大家对对号入座,用起来非常顺手 [ 隐藏内容 APEX$ROW_NUM APEX$ROW_SELECTOR APEX$ROW_STATUS...Apex社区教程 www.sqlu.cn Oracle Apex社区,Oracle Apex教程,Oracle Apex学习,Oracle Apex开发,Oracle Apex入门 EBS教程,EBS
以下所有操作都不涉及源库10.211.55.100数据库,以下称10.211.55.102中11GR2库为源库。...二、升级前准备 由于AutoUpgrade工具需要JDK版本1.8以上,11GR2的jdk版本为1.5不支持,所以使用19C的ORACLE_HOME中JDK版本。...WHERE comp_name = 'Oracle Application Express'; ##卸载APEX ##https://mikedietrichde.com/2017/07/27/oracle-apex-clean-up-oracle-database...-11-2-12-2/ ##How to Uninstall Oracle HTML DB / Application Express from a Standard Database (Doc ID...Notes:可以通过 status -job 101 命令查看当前JOB的运行情况。 三、正式升级 ? 在确认以上步骤没有问题之后,可以开始进行数据库升级。
B) The Oracle Application Express configuration should be updated after upgrading Oracle Database....以下SQL可以查询时区文件的版本: SELECT version FROM v$timezone_file; 对于选项B,Oracle Application Express即APEX组件,如果安装了...APEX,则建议先升级源数据库中的APEX组件,然后再升级DB。...升级APEX组件可以参考:http://blog.itpub.net/26736162/viewspace-2222308/ 对于选项D,TNSNAMES.ORA中不包含ORACLE_HOME变量,所以错误...对于D选项,RHP不支持Restart环境的单实例数据库,所以D选项错误。
题目部分 Oracle中的异常可以分为哪几类? 答案部分 异常(EXCEPTION)处理是用来处理正常执行过程中未预料到的事件,包括程序块的异常处理、预定义的错误和自定义错误。...预定义异常用于处理常见的Oracle错误,对这种异常情况的处理,无需在程序中定义,由Oracle自动将其触发。它们全部放在PL/SQL自带的标准包中,这样程序员就无需再次定义了。...预定义异常大约有20多个,下表是一些常见的预定义异常: 表 5-3 Oracle预定义异常 错误号 异常错误信息名称 说明 ORA-01403 NO_DATA_FOUND SELECT INTO没有找到数据...使用预定义异常只能处理系统预定义的20多个Oracle错误,而当使用PL/SQL开发应用程序时,可能会遇到其它的一些Oracle错误。例如,在PL/SQL块中执行DML语句时,违反了约束规定等等。...预定义异常和自定义异常都是与Oracle错误相关的,并且出现的Oracle错误会隐含地触发相应的异常;而自定义异常与Oracle错误没有任何关联,它是由开发人员为特定情况所定义的异常。
所以,Oracle的云数据库和其他Oracle云应用的区别就在于: 1.数据库是可视化和自我可管理的 2.应用是自行部署和开发的 不过目前Oracle提供的在线开发环境就只有Application Express...从目前开放的Oracle Cloud Database看来,实际上只是一个集成的Oracle Application Express开发环境。进一步的功能有待于Oracle的继续演进。...在用户管理页面需要初始化用户密码,应用的远程SQL Developer连接,需要在OAE(Oracle Application Express)进行用户创建。...接下来就可以使用已经具备的信息,进行连接配置,在SQL Developer最新的3.2版本中,通过"Cloud Connection"功能可以创建云数据库连接。...名称使用你获得的数据库标识名称,用户名为Express中创建的,URL使用你的apex连接串: ?
对于Oracle数据库升级操作,每个版本之间的升级步骤均相似,首先升级Oracle软件,然后升级数据库内的数据字典表。...在Oracle12c中,当我们通过容器的方式对数据库进行整合后,其升级方式变得更加灵活,整合后我可以选择对容器中的所有PDB数据库进行升级,也可以通过克隆/移动以及unplug/plug的方式对其中的某一个...PDB数据库进行升级从而不影响容器中的其他PDB数据库。...APEX Oracle APEX在12.1.0.2.0中默认安装,而在12.2.0.1.0未默认安装,如果不进行APEX卸载,在12.2.0.1.0中plug 12.1.0.2.0版本的pdb将报如下...ORA-65346错误: 20.3.jpg 当然,如果您有使用到APEX,需要在12.2.0.1.0中安装APEX,而无需卸载12.1.0.2.0中的APEX。
时,查询的结果是多值 ZERO_DIVIDE 零被整除 2.非预定义异常 ORACLE为它定义了错误编号,但没有定义异常名字。...错误没有任何关系,有开发人员为特定情况所定义的例外 下面的例子中当输入empno为时,尽管该雇员编号不存在,但PL/SQL代码并未给出适当的提示 scott@ORCL> declare 2 e_integrity...该函数用于在PL/SQL中定义错误消息,且只能在数据库端的子程序中使用(存储过程、函数、包、触发器),不能在匿名块和客户端的 子程序中使用 使用方法 RAISE_APPLICATION_ERROR...当设置为true,则该错误会被放在先前错误堆栈中。...PERFORMANCE: 用于检查可能引起性能问题,如在INSERT操作是为NUMBER列提供了VARCHAR2类型数据. INFORMATIONAL: 用于检查程序中的死代码.
通常情况下,在PL/SQL中,处理单行单列的数据可以使用标量变量,而处理单行多列的数据则使用PL/SQL记录是不错的选择。...单列多行数据 则由联合数组或嵌套表来完成,其特点是类似于单列数据库表。在Oracle 9i 之前称为PL/SQL索引表,9i 之后称之为联合数组。...嵌套表也是集合 类型中的一种,下面分别介绍这两种集合数据类型的使用方法。 一、联合数组 1、联合数组的特性 类似于一张简单的SQL表,按照主键进行检索数据 其数据行并不是按照预定义的顺序存储。...下标可以为负值,且下标的数据类型支持binary_integer,pls_integer,varchar2 其数据元素个数无限制 不能作为表列的数据类型使用,即只能作为PL/SQL复合数据类型使用...存放的数据类型是临时数据,故不支持insert,select into 等SQL语句,等同于SQL server中的表变量 2、语法 TYPE type_name IS TABLE OF
-06502 PL/SQL: Numeric or value error: number precision too large APP-01564: Oracle error 1455 in fdsgsv...有时可能会替换一些代码,来调用PLSQL处理超过10位的序列号,可并没有全部替换。 2、展示编号的工作台仅允许15位。 解决方案: 一旦已经使用了序列号,那么就不能修改初始值了。...针对这个报错,仔细询问了下,是执行SELECT语句,带一个特殊的过滤条件时会报这个错误,其它的过滤条件则不会报错,说明很可能是这个特殊过滤条件对应的记录中有些小问题,经过同事的排查,确定是其中一条记录的某个字段...,Oracle中定义的是NUMBER(10)类型,实际值是8开头的10位数,但应用程序中使用的getInt()获取,Integer的取值是-2^15-2^15-1,显然该值超过了Integer允许的最大值...总结: 根据报错的提示内容:converting column overflows integer datatype,可以检查是否有表定义的字段类型和程序中定义的变量类型不匹配,导致精度长度无法对应,造成转换过程中超过
错误:%pre(oracle-xe-11.2.0-1.0.x86_64) 脚本执行失败,退出状态码为 1 错误:oracle-xe-11.2.0-1.0.x86_64: 安裝 已失败 [root@node1...Specify the HTTP port that will be used for Oracle Application Express [8080]: Specify a port that will...SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE); PL/SQL 过程已成功完成。...SQL> 3、数据库工具远程登录Oracle 需要添加Oracle的驱动程序包 4、卸载 [root@node1 ~]# ps -ef | grep ora_ root 28817 20226...1/1 警告:文件 /u01/app/oracle/product/11.2.0/xe/config/seeddb/express.dfb: 移除失败: 没有那个文件或目录 警告:文件 /u01/app
墨墨导读:某客户单位数据库出现异常,大致现象是:数据库状态是open的,但是其中一个数据文件无法访问,本文分享排查原因与解决问题的整个过程。...JS_XT_XZGLXX_XZXK_FR" 出错 ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小 ORA-06512: 在 "ZX_XT.PKG_双公示接收_邢_2019",..._i282223.trc 上述ora-00600 错误,总的来都是常见的,几乎都可以定性为数据坏块。...这里我们的处理方法是当文件丢失处理(很久之前处理过Windows环境数据文件大小为 0 kb的问题,这几种情况都类似。) 这里我说一下简单的处理思路: 1....对于文件系统来讲,目前已经不是Oracle存储的最佳选择了,建议使用ASM。当然,其他数据库比如MySQL、PostgreSQL除外。
作者:赵黎明,爱可生 MySQL DBA 团队成员,熟悉 Oracle、MySQL 等数据库,擅长数据库性能问题诊断、事务与锁问题的分析等,负责处理客户 MySQL 及我司自研 DMP 平台日常运维中的问题...2问题复现 Oracle 环境中验证 -- 创建测试用户并赋权 [root@localhost ~]# sqlplus / as sysdba SQL> create user u1 identified...SQL> 由此可见,在 Oracle 中,无论是 u1 还是 u2 用户,调用存储过程时都能正确返回表名,说明两者查询 user_tab_columns 视图的返回结果是一致的,这也是符合预期的。...dba_views 视图中的 text 列是 long 类型的,无法直接使用 like 进行模糊查询,会报 ORA-00932 的错误。...5问题总结 在 OB 中,普通用户查询 USER_TAB_COLUMNS 系统视图权限的逻辑与 Oracle 并不一致,导致查询结果有差异。
Oracle 数据泵脚本备份数据库用户 ->返回总目录<- 介绍 在工作中正常只需要导应用用户,全库导出导入的方式一般不太常用,本文仅做介绍演示。...PL/SQL 脚本等元素的所有 DDL 语句; 除去 SYS 用户下的所有表中的数据 拼接系统用户: select listagg('\''' || username || '\''',',') within...IO性能,导出完成后查看日志是否存在错误。...=truncate 如果导入过程中出现 ORA-31684 错误,代表目标库已存在,可以忽略这个错误。.../rdbms/admin/utlrp.sql 打开监听,重启数据库,打开job: lsnrctl start sqlplus / as sysdba shu immediate startup alter
https://blog.csdn.net/wzy0623/article/details/53923991 在使用Oracle 10g 流复制时出现过一些问题,现在把解决过程总结一下。...系统配置:HP-UX B.11.31 U ia64、Oracle Enterprise Edition Release 10.2.0.4.0、表级单向流复制 问题现象:流复制失效,源表更新,目标表没有更新...-01403: no data found 2) 显示事务的错误信息 SQL> SET SERVEROUTPUT ON SIZE 1000000 SQL> exec print_transaction(...dba_apply_error; 5) 最后看着error message不爽,删除它 exec dbms_apply_adm.delete_all_errors(apply_name => 'APPLY'); 总结:本错误是由对目标表进行的手工修改与流复制过来的事务产生数据冲突引起的...在单向复制中,最好对目标表只读操作,修改只从源表apply,否则容易引起数据问题。
1.db_block_checking db_block_checking 是当block发生任何变化的时候进行逻辑上的完整性和正确性检查。该参数能够避免内存中数据块的损坏。...有些情况下,比如索引块损坏,造成通过索引无法获得数据,但是读索引块的时候并没有出1578错误,有可能是这个原因。 ...check point; SQL>@insert_test.sql -->第二次插入数据 PL...但它并不侦测在内存中已经出错的数据块。不管错误与否,DBWn后会将其写入到数据文件。 ...更多关于Block checking,http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:1094433279412
DESCRIBE 操作会出现错误,提示该操作只能在只读模式下进行: 以下启动数据库到只读模式: 执行 DBMS _PDB.DESCRIBE 过程,然后关闭数据库: 这个步骤在 $ORACLE_HOME...视图批量创建 CDB 所需要的内部视图、同义词并进行授权: 接下来的包体中定义了详细的操作步骤,其中最核心的是根据数据字典视图批量的创建 CDB 所需要的视图: 最终执行转换成类似如下的一个系列 SQL...Database 11g 版本的特性决定的,如果一个企业能否随意创建 Schema,则数据库会变得异常混乱,而 PDB 模式通过隔离可以彻底解决这一问题。...在获得了数据库账户之后,可以通过 Oracle Application Express 进行在线的应用开发和发布,后台的数据对象可以通过 APEX 内嵌的管理功能进行维护: 在 Oracle SQL...Developer 工具中,已经集成了“Cloud Connection”模块用于云端的数据库管理: 虽然目前 Oracle 的云数据库看起来还相当简单,但是不论如何,云数据库的时代已经慢慢走来。
登陆PL/SQL 假定本地电脑中已经安装了Oracle 11gR2数据库和PL/SQL developer。...如果没有安装可以在一下地址下载安装: PL/SQL developer(含注册机):https://pan.baidu.com/s/1kUfY8GB 密码: 1ky8 首先打开PL/SQL,会发现没有database...点击Apply->OK,退出PL/SQL Developer,再次登录。 尝试登陆数据库。出现以下错误: ?...显示初始化错误:Make sure you have the 32 bits Oracle Client installed. 这个意思就是我们没有安装32位的Oracle客户端。...登录进去之后我们可以检查一下能否查询数据: ? 查询成功,dual表中确实只有一个记录X。 查询没有问题,也就是实现了PL/SQL Developer连接本地Oracle 11g 64位数据库。
昨天下午写了2个Function,一个是从ERP LN中读出来Item-Purchase BP中的一个指定的Item和BP的BlockingReason,另一个是按照指定的ID从应用系统中读出来Item...和BP,从而调用第一个Function返回真正的BlockingReason,在每一个Function中,都有一段如果报错就调用写错误日志的存储过程。...在实际的使用中使用:Select Function2(ID) from Dual;,但是老报以下错误: ORA-06502: PL/SQL: numeric or value error: character...at "TROY.COMMON_SYSTEMLOG_PKG", line 43ORA-06512: at "TROY.COMMON_BAANBRIDGE_PKG", line 339ORA...-01403: no data found 经过查询,原因是“对数据库有写操作(INSERT、UPDATE、DELETE、CREATE、ALTER、COMMIT)的函数,是无法简单的用SQL
领取专属 10元无门槛券
手把手带您无忧上云