DML错误日志是Oracle 10gR2引入的一个类似于SQL*Loader的错误日志功能。它的基本原理是把任何可能导致语句失败的记录转移,放到一

DML错误日志是Oracle 10gR2引入的一个类似于SQL*Loader的错误日志功能。它的基本原理是把任何可能导致语句失败的记录转移,放到一张错误日志表中。

具体使用如下:

1、使用DBMS_ERRLOG.CREATE_ERROR_LOG来创建错误日志表

--原表my_test表结构

desc my_test

Name Type Nullable Default Comments

------ ------------ -------- ------- --------

SID NUMBER

NAME VARCHAR2(20) Y

GENDER INTEGER Y

AGE NUMBER Y

HOBBY VARCHAR2(20) Y

--执行下面的语句,生成错误日志表

execute dbms_errlog.create_error_log('my_test','my_test_bad');

PL/SQL procedure successfully completed.

--生成的错误日志表my_test_bad结构

desc my_test_bad

Name Type Nullable Default Comments

--------------- -------------- -------- ------- --------

ORA_ERR_NUMBER$ NUMBER Y

ORA_ERR_MESG$ VARCHAR2(2000) Y

ORA_ERR_ROWID$ UROWID(4000) Y

ORA_ERR_OPTYP$ VARCHAR2(2) Y

ORA_ERR_TAG$ VARCHAR2(2000) Y

SID VARCHAR2(4000) Y

NAME VARCHAR2(4000) Y

GENDER VARCHAR2(4000) Y

AGE VARCHAR2(4000) Y

HOBBY VARCHAR2(4000) Y

其中ORA_ERR_TAG$这个字段可以存放用户自定义的数据

2、在insert语句中使用my_test_bad错误日志表

insert into my_test

(sid,name,gender,age,hobby)

values (12,'joy',2,'age','book,football,run')

log errors into my_test_bad;

insert into my_test

(sid,name,gender,age,hobby)

values (12,'joy',2,'age','book,football,run')

log errors into my_test_bad

ORA-01722: 无效数字

SQL> select * from my_test_bad;--(结果不规范,用图展示)

update,delete,merge语句都可以在后面声明错误日志,方法相同。如:

update my_test

set age = 'yyy'

where sid = 12

log errors into my_test_bad;

注意事项:log errors子句不引起隐式提交,也就是说,即使回滚了失误,错误信息还是会保存在错误日志表中。

本文永久更新链接地址:,

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

mysql dml 日志_Oracle DML错误日志笔记相关推荐

  1. MySQL日志文件之错误日志和慢查询日志详解

    今天天气又开始变得很热了,虽然很热很浮躁,但是不能不学习,我在北京向各位问好.今天给大家分享一点关于数据库日志方面的东西,因为日志不仅讨厌而且还很重要,在开发中时常免不了与它的亲密接触,就在前几天公司 ...

  2. MySQL日志 - Error Log错误日志

    MySQL日志历史文章, <MySQL日志 - General Query Log> MySQL的错误日志,是我们排查问题的主要线索之一,引用GreatSQL技术社区的这篇文章<图文 ...

  3. 配置php.ini文件,关闭错误提示,打开错误日志,设置错误日志路径(亲测)

    配置php.ini文件,关闭错误提示,打开错误日志,设置错误日志路径 打开php.ini配置文件: 找到display_errors = On:修改为:display_errors = Off: 找到 ...

  4. mysql之 日志体系(错误日志、查询日志、二进制日志、事务日志、中继日志)...

    一. mysql错误日志: 错误日志记录的事件: a).服务器启动关闭过程中的信息 b).服务器运行过程中的错误信息 c).事件调试器运行一个事件时间生的信息 d).在从服务器上启动从服务器进程时产生 ...

  5. mysql错误日志为aborting_MySQL 错误日志(Error Log)

    同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分.MySQL有几种不同的日志文件.通常包括错误日志文件,二进制日志,通用日志,慢查询日志,等等. 这些日志能够帮助我们定位mysqld ...

  6. Mysql:日志管理:错误日志

    mysql的错误日志记录了mysqd服务器的基本进程的运行状态信息. 命令.配置选项:[--]log_error[=filen_ame] --调用flush logs时,生成新的错误日志文件,旧的文件 ...

  7. MySQL配置文件无法生效、错误日志无法打印、my.cnf权限644无法启动、主从复制配置失效各式配置文件疑难杂症最终解决办法

    碰到的问题汇总: 错误日志无法生效,看不到错误日志信息 配置主从复制时,my.cnf权限为777时无法启动二进制日志log-bin=mysql-bin即,show master 始终为空 当修改my. ...

  8. mysql5.6 错误日志_MySQL5.6.36 日志文件之错误日志,二进制日志,慢日志

    (一)错误日志配置 vim /etc/my.cnf log-error=/var/log/mysql.log 查找错误日志位置 show variables like '%log_error%' 一般 ...

  9. php慢日志 格式,php慢日志记录和错误日志(转)

    php的日志是值得关注的,包含错误日志和慢日志 一 错误输出 找到php.ini log_errors = On ; Log errors to specified file. error_log = ...

最新文章

  1. OVS openflow(二十四)
  2. 怎么将sql语句转化成语法树_数据库如何解析执行SQL
  3. 随机抽样一致算法(Random sample consensus,RANSAC)
  4. hset php,HSET命令_视频讲解_用法示例-redis编程词典-php中文网
  5. win10+Vmware+centeros10连接xshell和xftp
  6. 基于C语言的软件,基于C语言的计算机软件编程分析
  7. 数据库工作笔记009---Centos中导出mysql数据库
  8. 【NOIP】OpenJudge - 15:银行利息
  9. 如何成为一名优秀的前端工程师 (copy) - 段华建
  10. 什么是锁PHP,PHP简单分布式锁-PHP中的锁
  11. Tracer 结合logback记录日志
  12. 基于数据驱动的人脸识别课题研究
  13. AB伺服电机维修CAT MPM-B1152C-SJ72AA详解
  14. java获取字符串长度_Java length()方法:获取字符串的长度
  15. 马斯克入驻推特造成大恐慌!这俩戏精还冒充被裁员工,外媒全被耍了
  16. 学会这几个可视化布局思路,轻松做出企业级可视化大屏
  17. 手把手教你如何连接阿里云RDS云数据库
  18. Atom-beautify插件的安装,使用过程
  19. 光学成像基础-荧光滤色片
  20. 服务器自动管理系统之连接服务器的方式

热门文章

  1. 最大子序列求和_最大子序列和问题
  2. 树莓派ssh连接问题
  3. Hyperledger Fabric 三种node节点 (1) 基本概念
  4. linux kernel使用技巧
  5. [crypto]-53-openssl命令行的使用(aes/rsa签名校验/rsa加密解密/hmac)
  6. 删除“已禁用输入法”托盘图标
  7. (53)进程结构体EPROCESS,擦除 DebugPort 实现反调试,ActiveProcessLinks 断链实现进程隐藏
  8. windows修改mac地址表
  9. vulnhub_内网渗透测试的记录——网络安全
  10. NCTF2019 -- PWN部分writeup