oracle事务的执行过程
1.客户端连接至oralce:
首先客户端连接至oracle的监听器,然后监听器分配一个数据库实例(这里的是实例)给客户端,然后客户端以后就直接与这个数据库实例进行连接,直至断开与oracle的连接.
2.提交sql:
(1)客户端用户提交一个sql至oracle服务器实例进程,oracle首先检查一下sga的共享sql区是否有相同结构的sql,如果有就用它的执行路径和资源,如果没有就创建sql的执行路径与资源和执行计划,创建完成后,将sql的结构放在共享区;
(2)实例将sql的更新操作之前的原始信息放至回滚段和redo段;
(3)实例完成sql的更新操作,将更新后的数据放至数据缓存段中;
(4)客户端提交事务(commit);
(5)数据库实例将redo段中的信息写入redo日志文件中,提交完成后,完成事务的提交;
(6)告诉客户端,事务提交完成.(注意这时数据段缓存中的数据并未写入数据文件中,实例进程会定时将数据段缓存中的数据写入数据文件中);
相关文档:
Oracle的外键用来限制子表中参考的字段的值,必须在主表中存在。而且在主表的记录发生变化导致外键参考唯一约束值发生了变化时,定义了一系列的动作。 在SQL92标准中定义了几种外键改变后,如何处理子表记录的动作,其中包括:
限制Restrict:这种方式不允许对被参考的记录的键值执行更新或删除的操作;置为空Set to null ......
用oracle的卸载程序并不能完全卸载干净。如之前的命名的oracle sid 不能再使用。会提示sid存在。下面是在winxp下完全卸载oracle的方法。
1、开始->设置->控制面板->管理工具->服务
停止所有Oracle服务。
2、开始->程序->Oracle - OraHome81->Oracle ......
介绍to_char(数字, ‘格式’),比较常用的格式
9 表示有效位数
0 用0补足位数
B 用空格补足位数
原数的位置有实际数字占位的时候,0和9的效果是一样的。
0和9的区别在于格式中的那一位置实际数字没有站位的情况下。
select to_char(0.45,'0.99'); 结果是0.45
select ......
用tg4mssql链接oracle.
过程不在描述,google很多。
问题:
1、mssql express的时候,失败
将server用转义字符写出,成功。
HS_FDS_CONNECT_INFO="SERVER=SHAM0415\\SQLEXPRESS;DATABASE=GMT_KJ"
2、建多个的时候,不能解析。 tnsping 命令总不通过。
找了很多,同一个帖子,转了无数次。。
唉。。中国的 ......
Oracle/PLSQL: Lpad Function:
http://www.techonthenet.com/oracle/functions/lpad.php
RPAD and LPAD [Oracle SQL]:
http://www.adp-gmbh.ch/ora/sql/rpad.html
引述
In Oracle/PLSQL, the lpad function pads the left-side of a string with a specific set of characters.
The syntax for the lpad funct ......