Installing Oracle Database 11g on Windows

Installing Oracle Database 11g on Windows

虽然目前Oracle还没有释出Oracle11g for windows的下载版本,但是在Oracle11g的网站上已经出现Oracle 11g for windows的安装文档了,从文章的截图中可以看到,windows版和linux版的安装界面基本上一样,颜色风格也差不多,版本也是11.1.0.6,和linux版本一致。安装教程都出来了,估计马上就可以从Oracle网站上下载了。

Installing Oracle Database 11g on Windows
Installing Oracle Database 11g on Linux

更多官方关于oracle11g的教程(OBE:Oracle by Example),请点击这里

Oracle11g新特性:只读表(read only table)

Oracle11g推出了一个新的特性,可以将table置于read only状态,处于该状态的table的不能执行DML操作和某些DDL操作。在Oracle11g之前的版本,只能将整个tablespace或者database置于read only状态。对于table的控制则只能通过权限来设定。

SQL> create table t(i int);
 
Table created.
 
SQL> insert into t values(1);
 
1 row created.
 
SQL> commit;
 
Commit complete.
SQL> alter table t read only;
 
Table altered.
 
SQL> select read_only from user_tables where table_name='T';
 
READ_ONLY
----
--
YES

[继续阅读全文]

Oracle11g新特性:使用PIVOT/UNPIVOT进行行列转换

MS SQL Server 2005引入的pivot/unpivot关键字,对于行列转换确实非常的方便。所以Oracle11g也引入了这两个关键字,语法和SQL Server 2005的基本上差不错。

SQL> select * from sales;
 
PRODCUT       QUARTER     AMOUNT
--------
-- ---------- ----------
a                   1        100
a                   2        110
a                   3        130
a                   4        140
b                   1        210
b                   2        220
b                   3        230
b                   4        240

使用pivot转换显示:

SQL> select * from sales
 
2   pivot (sum(amount)
 
3  for quarter in
 
4  (1 as Q1,2 as Q2,3 as Q3,4 as Q4));
 
PRODCUT            Q1         Q2         Q3         Q4
--------
-- ---------- ---------- ---------- ----------
a                 100        110        130        140
b                 210        220        230        240

[继续阅读全文]

Oracle11g SQLPLUS支持直接显示Blob数据

在Oracle10g及以前版本的sqlplus中,不能直接显示blob或者bfile类型的数据:

SQL> create table t(b blob);
 
Table created.
 
SQL> insert into t values('1');
 
1 row created.
 
SQL> select * from t;
SP2-0678: Column or attribute type can not be displayed by SQL*Plus

Oracle11g中,sqlplus的这个限制已经取消,可以在sqlplus中直接显示blob和bfile类型的数据:

SQL> create table t(b blob);
 
Table created.
 
SQL> insert into t values('1');
 
1 row created.
 
SQL> select * from t;
 
B
---------------
--
1