oracle实施过程中误区,oracle 开发误区探索《二》
接上一篇。
③ 堤防DDL提交事务
DDL伪代码展示:
begin
commit;
DDL-statement
commit;
Exception
when others
then rollback;
end;
因此,DDL总会提交,即使提交不成功也会如此。DDL一开始就提交,一定要知道这一点。它首先提交,因此如果必须回滚,它不会回滚你的事务。如果执行了DDL,它会使你所执行的所有未执行的工作成为永久性的,即使DDL不成功也会如此。
测试如下:-------session-A-----------
hr@ORCL> drop table t purge;
Table dropped.
hr@ORCL> create table t as select * from user_objects;
Table created.
hr@ORCL> select count(*) from t;
COUNT(*)
----------
42
hr@ORCL> delete from t;
42 rows deleted.
hr@ORCL> create index idx_t on t(object_id);
Index created.
-------session_B----------------
hr@ORCL> select count(*) from t;
COUNT(*)
----------
0
--发现t表记录为0,说明已经提交了。
hr@ORCL> insert into t select * from user_objects;
43 rows created.
hr@ORCL> create index idx_t on t(object_think);
create index idx_t on t(object_think)
*
ERROR at line 1:
ORA-00904: "OBJECT_THINK": invalid identifier
-------session_C----------------
hr@ORCL> select count(*) from t;
COUNT(*)
----------
43
在一个事务里,为了保证事务的原子性,DDL要慎重!!
④ 关注空格
这个错误其实很容易发生,虽然简单,但还是希望能引起共鸣!
测试:hr@ORCL> create table t (n varchar2(10));
Table created.
hr@ORCL> insert into t values(\'ab \');
1 row created.
hr@ORCL> commit;
Commit complete.
hr@ORCL> select * from t where n=\'ab\';
no rows selected
hr@ORCL> update t set n=trim(n);
1 row updated.
hr@ORCL> select * from t where n=\'ab\';
N
----------
ab
oracle实施过程中误区,oracle 开发误区探索《二》相关推荐
- OKR实施过程中的一些误区
在OKR实施过程中,可能会存在如下一些误解: •OKR只适用于业务不确定性团队. •挑战性目标制定了就可以激发员工挑战目标了. •OKR是一种更好的绩效评价方式. •OKR不过是传统绩效管理的公开版. ...
- doe报告模板_技术漫谈|关于制剂研发过程中的实验设计(DOE)误区讨论
技术漫谈 第01期 关于制剂研发过程中的实验设计(DOE)误区讨论 // 作者:合全药业制剂业务后期项目部 感谢合全药业制剂研发后期团队朱莹.夏彬等同事对本稿件的支持 早在2004-2005年,FDA ...
- day12_oracle hint——SQL优化过程中常见Oracle中HINT的30个用法
在SQL语句优化过程中,经常会用到hint, 以下是在SQL优化过程中常见Oracle中"HINT"的30个用法 1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方 ...
- 《理财最重要的事》精髓:理财过程中,哪些情绪误区导致我们的理想和现实之间产生差距?我们又该如何量身定制自己的理财规划?
<理财最重要的事>书中的精髓:理财过程中,哪些情绪误区导致我们的理想和现实之间产生差距?我们又该如何量身定制自己的理财规划? 随着生活水平的提高,我们手中有了闲钱,很多人都会理财:炒房.炒 ...
- ERP项目实施过程中的致命过失(转)
ERP项目实施过程中的致命过失 自从1990年Gartner Group提出了ERP概念之后,引起了全球性的管理变革.在美国和一些欧洲发达国家,ERP已经接近饱和,它们现在看好的是CRM系统,2001 ...
- 七种在BIM实施过程中减少浪费的方法
在超过20年的BIM发展进程中,AEC公司依然在寻找更加有效的BIM/VDC实施方法,其中现阶段一个主要的领域就是如何在实施过程中减少浪费.低效的虚拟协同会议,笨重的BIM文件,以及急于到模型层面的心 ...
- 软件外包项目实施过程中的关键因素(摘自IT168技术频道)
外包是发包方和接包方互相信任.高度协作的共同行为.为了顺利实施外包,对于发包方,要求企业具有一定的技术水平.项目管理水平.人力资源和沟通控制能力.对于接包方,要求企业具有一定的成本.质量控制能力,具有 ...
- MRPII实施过程中若干问题的研究(转)
MRPII实施过程中若干问题的研究 http://www.226e.net/article/13/Article6465_1.htm 摘要:本文分析了我国在实施MRPII过程中遇到的问题.产生原因和解 ...
- ERP实施过程中的摘记
ERP是一个大而全的业务逻辑系统,关注产.购.销.财:每个模块可以理解为一个小的定制系统:好的应用系统可以通过配置,部分二次开发来完成业务要求. 对于已经公司历史悠久,切之前使用定制开发产品,简单实现 ...
- 性能测试 架构层(二) 从性能测试层面了解架构设计 分布式项目实施过程中的常见难点,测试架构层面思考性能测试应该如何做?自行思考解决方案是什么?
目录 前言 架构预览 小节 一.访问层架构设计 1.LVS 2.Nginx 二.API 网关层架构设计 1.分布式会话管理 2.接入层控制 Filter过滤器 三.核心服务层架构设计 1.核心服务 ...
最新文章
- 【每日一算法】填充同一层的兄弟节点
- linux降内核版本_ubuntu18.04 降内核版本的问题
- 消费者驱动的微服务契约测试套件:Spring Cloud Contract
- Leetcode-单调数列(896)
- 编程之美系列之一——阶乘的运算
- java mesos kubernete_Fabric8操作Kubernetes(一)
- ubuntu下用apt-get安装软件时网速太慢的解决办法
- 数据可视化(推荐Tableau、 PowerBI 、FineBI、Echarts、ggplot、PYTHON、R)---数据分析领域的万金油技能
- idea new对象后自动补全_IDEA的quot;奇淫巧技quot;
- 【九度oj 1135】【OpenJ_Bailian - 2915】 字符串排序 (水)
- MySQL DML语言笔记
- JavaScript原生Ajax
- PyQt5 the application failed to start because no Qt platform could be initialized
- MySql 免费数据库管理工具
- boost电路输出电流公式_Boost电路的参数计算及仿真
- 使用photoshop画虚线框
- 苹果超薄笔记本MBA设计缺陷
- moment.js 中文API
- 一个炒鸡简单计算拼音声母出现次数及概率程序
- 数组和广义表 - [数据结构]