SELECT ENAME
FROM EMP
WHERE DEPTNO > 20
AND EMP_CAT > ‘A’;
這裏, ORACLE只用到了DEPT_NO索引. 執行路徑如下:
TABLE ACCESS BY ROWID ON EMP
INDEX RANGE SCAN ON DEPT_IDX
譯者按:
我們來試一下以下這種情況:
SQL> select index_name, uniqueness from user_indexes where
table_name = ''''EMP'''';
INDEX_NAME UNIQUENES
------------------------------ ---------
EMPNO UNIQUE
EMPTYPE NONUNIQUE
SQL> select * from emp where empno >= 2 and emp_type = ''''A'''' ;
no rows selected
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 TABLE ACCESS (BY INDEX ROWID) OF ''''EMP''''
2 1 INDEX (RANGE SCAN) OF ''''EMPTYPE'''' (NON-UNIQUE)
雖然EMPNO是唯一性索引,但是由於它所做的是範圍比較, 等級要比非唯一性索引的等式比較低
ORACLE9i 的透明閘道的配置
ORACLE實現異種資料庫連接服務的技術叫做透明閘道(Transparent Gateway)。
目前ORACLE利用透明閘道可以實現和SQL SERVER、SYBASE、DB2等多種主流資料庫的互聯。
筆者由於工作需要,通過oracle訪問sybase資料庫,把配置oracle9i TRANSPARENT GATEWAY FOR
SYBASE
的步驟寫成文檔,供需要的網友參考!
配置TRANSPARENT GATEWAY FOR SYBASE步驟
1.
oracle所在伺服器上安裝sybase client(或者在同一台server上安裝oracle、sybase伺服器)
確保能夠訪問sybase資料庫
2.
安裝TRANSPARENT GATEWAY FOR SYBASE選件,要用自定義安裝。
正確選擇sybase的安裝目錄
3.
選擇一個sid字串準備賦給sybase資料庫。如:tg4sybs
設置SYBASE的dll路徑到環境變數PATH(這一步很重要)
4.
修改初始化文件,默認的是:
ORACLE_HOME\tg4sybs\admin\inittg4sybs.ora
設置參數
HS_FDS_CONNECT_INFO
格式:HS_FDS_CONNECT_INFO= server_name. database_name[,INTERFACE=
interface_file]
server_name. database_name是大小寫敏感的。
INTERFACE可選
例子:如下
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
# This is a sample agent init file that contains the HS parameters
that are
# needed for the Transparent Gateway for Sybase
#
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >> 没有相关教程
|