PL/SQL block中异常对事物的影响

摘要: /*===========================================================================================pl/sql block中exception对transaction的影响================= 没有excepion block的pl/sql中,所有sql语句保持一个原子性,如果发生异常,就整个roll back(异常一直向外抛出,直到终端) 如果增加了excepion捕获,就仅roll back发生异常的sql========================================== 阅读全文
posted @ 2012-02-10 15:26 wait4friend 阅读(283) 评论(0) 推荐(0) 编辑

Oracle 时区(TimeZone )-- DST

摘要: Daylight Savings Time (DST)指 定一个时区的时候,可以使用数字(-05:00),缩写(EST)或者地区名称(US/Eastern)。 在多数情况下,它们的效果是一样的。但是在DST的处理过 程中,如果使用地区名称来指定时区,ORACLE会自动进 行DST的一些转换。 举 例来说,2006-04-02 2:00 AM是US/Eastern进 行DST切换的时刻(http://www.timetemperature.com/tzus/daylight_saving_time.shtml)。在实行DST的时期,US/Eastern的 时区数字显示为 -04:00,在非DST 阅读全文
posted @ 2012-02-10 15:02 wait4friend 阅读(1760) 评论(0) 推荐(1) 编辑

Oracle 时区(TimeZone ) -- 时区转换

摘要: 不同时区的查询select n.tzname, n.tzabbrev, tz_offset(n.tzname) from v$timezone_names n;不同时区的转换方法时区转换的语法 at time zoneselect systimestamp, systimestamp at time zone sessiontimezone from dual;select from_tz(to_timestamp('2008/03/28 16:00:00'), '+08:00') at time zone '-07:00' from dual; 阅读全文
posted @ 2012-02-10 14:58 wait4friend 阅读(2611) 评论(0) 推荐(2) 编辑

Oracle 时区(TimeZone )-- DUMP信息

摘要: 从DUMP信息构造时间建立表,包含不同类型的三个columncreate table tstz(ts timestamp, tstz timestamp with time zone, tsltz timestamp with local time zone);insertinto tstz values(systimestamp,systimestamp,systimestamp);commit;SQL> select t.tstz,dump(t.tstz), dump(t.tstz,16) from tstz t; --显示结果格式进行了重新排版------------------- 阅读全文
posted @ 2012-02-10 14:46 wait4friend 阅读(792) 评论(0) 推荐(1) 编辑

Oracle 时区(TimeZone ) -- 数据类型

摘要: 不 同数据类型的区别使用 DBTimeZone 察看数据库所在的时区SQL> select dbtimezone from dual;DBTIMEZONE----------+08:00找2个典型的美国时区SQL> select tz_offset('US/Eastern'),tz_offset('US/Mountain') from dual;TZ_OFFSET('US/EASTERN') TZ_OFFSET('US/MOUNTAIN')----------------------- ---------------- 阅读全文
posted @ 2012-02-10 14:40 wait4friend 阅读(2832) 评论(0) 推荐(1) 编辑

安装Ubuntu Server 11.10

摘要: 安装环境 VMWare Server 1.0.5 Ubuntu Server 11.10 i386 默认服务器安装 基本安装过程全部选中默认配置,在Software Selection是选中OpenSSH Server 设置root 默认Ubuntu没有root,使用安装用户登录后,设置root密码,方便使用su - 命令 sudo passwd root配置静态... 阅读全文
posted @ 2012-02-06 14:46 wait4friend 阅读(696) 评论(0) 推荐(1) 编辑

Oracle进行字符串汇总

摘要: 对字符进行汇总(把相关的字符连接成一个串,以符号分隔),有三种常用方法(10g中增加了内置的WMSYS.WM_CONCAT()函数)。在不同数据量下进行测试,运行时间如下表:在数据量10000的表上进行三种方法的测试,运行时间单位秒数据量PCTCollectSYS_ConnectUDF1%0.0170.0180.01710%0.0260.0500.02950%0.0572.450.065100%0.0905.001.06使用的代码-- sample datadrop table t_collect purge;create table t_collect as select mod(rown. 阅读全文
posted @ 2012-02-02 16:24 wait4friend 阅读(1617) 评论(0) 推荐(1) 编辑

Redo和Undo 杂七杂八的东西

摘要: 当发生数据改变的时候,SGA中对应的DBblock,IDXblock和UNDOblock都被纪录在Redo中。保 留undo的作用:在crash recovery中,系统先roll forward所有的操作,然后使用undo信息 roll back没有提交的操作。对temporary table的DML操作,不会产生直接redo,但是会产生undo(undo会产生redo).在正常的操作中,只有对redo log file的写操作(会发生log file sync事件)。读仅发生在恢复的时候。当commit的时候,db buffer不会写入db file,实际发生的动作是:LGWR把scn和r 阅读全文
posted @ 2012-02-01 15:55 wait4friend 阅读(218) 评论(0) 推荐(0) 编辑

SQL Tuning Advisor简单使用

摘要: SQL Tuning Advision是Oracle提供的一个功能包,可以针对有性能问题的SQL给出优化建议。可以作为调优的辅助手段。建立测试表和索引create table t_1 as select * from dba_objects;create table t_2 as select * from dba_tables;create index idx_t_2_ts on t_2(tablespace_name);begin dbms_stats.gather_table_stats(ownname => user,tabname => 'T_1',cas 阅读全文
posted @ 2012-02-01 15:09 wait4friend 阅读(1425) 评论(0) 推荐(1) 编辑

字符串分割成集合

摘要: 很多时候我们需要把一个字符串分割成多个元素,存放在Collection里面处理。比如Web传送一个逗号分隔的字符串,PL/SQL需要对里面的每个元素进行处理。这实际上是行列转换的一个具体应用。我们习惯使用的两个办法分别是 1. 使用PL/SQL循环分割 2. 使用单条SQL进行分割。 下面测试这两种方式的限制和性能 首先分别使用两种方式构造两个函数 -- use conve... 阅读全文
posted @ 2012-01-31 12:01 wait4friend 阅读(1658) 评论(0) 推荐(0) 编辑