ORACLE外部表的應用例項
ORACLE外部表的應用例項
Oracle 9i 的一項新特性就是 External Table,它就象通常的資料庫表一樣,擁有欄位和資料型別約束,並且可以查詢,但是表中的資料卻不儲存在資料庫中,而是在與資料庫相關聯的普通外部檔案裡。當你查詢 External Table 時,Oracle 將解析該檔案並返回符合條件的資料,就象該資料儲存在資料庫表中一樣。
具體的定義可以參見《 Oracle 概念手冊》,以下的幾點需要注意:
:外部表的描述:
> 建立的語法類似於: "CREATE TABLE ... ORGANIZATION EXTERNAL"
> 資料在資料庫的外部組織,是作業系統檔案。
> 作業系統檔案在資料庫中的標誌是透過一個邏輯目錄來對映的。
> 資料是隻讀的。(外部表相當於一個只讀的虛表)
> 不可以在上面執行任何 DML 操作,不可以建立索引。
> 可以查詢操作和連線。可以並行操作。
例子:
假如有如下兩個資料檔案:
1: 資料檔案的格式
F1.TXT檔案:
13234,FIRSTS
46464,TESTA
F2.TEXT檔案:
13234,SECONDS
46464,TEST
2:建立目錄,並進行授權;
sql> create directory test_dir as 'E:temp';
sql>grant read,write on directory test_dir to users;
注意:建立完畢邏輯目錄之後要把平面檔案複製到該目錄下,另外還要注意檔名字不要寫錯。
3:建立外部表:
create table test_table
(ms_no varchar(20),
tip varchar(20),
descs varchar(20))
ORGANIZATION EXTERNAL
(
TYPE ORACLE_LOADER
DEFAULT DIRECTORY test_dir
ACCESS Parameters
(
RECORDS DELIMITED BY NEWLINE
badfile 'bad_dev.txt'
LOGFILE 'log_dev.txt'
FIELDS TERMINATED BY ','
MISSING FIELD VALUES ARE NULL
(ms_no,tip,descs)
)
LOCATION('F1.txt','F2.txt')
)
;
表建立完成.當然也可以匯入一個檔案
4:進行SELECT 操作看是否正確;
SQL>select * from test_table
結果如下:
MS_NO TIP DESCS
-------------------- -------------------- --------------------
13234 FIRSTS
46464 TESTA
13234 SECONDS
46464 TEST
: 如何得到外部表的有關資訊:
SQL> DESC DBA_EXTERNAL_TABLES;
Name Type Nullable
----------------------- ------------- - ----
OWNER VARCHAR2(30)
TABLE_NAME VARCHAR2(30)
TYPE_OWNER CHAR(3) Y
TYPE_NAME VARCHAR2(30)
DEFAULT_DIRECTORY_OWNER CHAR(3) Y
DEFAULT_DIRECTORY_NAME VARCHAR2(30)
REJECT_LIMIT VARCHAR2(40) Y
ACCESS_TYPE VARCHAR2(7) Y
ACCESS_PARAMETERS VARCHAR2(4000) Y
SQL>SELECT OWNER,TABLE_NAME,DEFAULT_DIRECTORY_NAME,ACCESS_PARAMETERSFRFROM
DBA_EXTERNAL_TABLES;
可以得到外部表的相關資訊;
:如何得到外部路徑的資訊:
SQL> desc DBA_EXTERNAL_LOCATIONS;
得到該表結構:
Name Type Nullable
--------------- -------------- --------
OWNER VARCHAR2(30)
TABLE_NAME VARCHAR2(30)
LOCATION VARCHAR2(4000) Y
DIRECTORY_OWNER CHAR(3) Y
DIRECTORY_NAME VARCHAR2(30) Y
SQL> select * from DBA_EXTERNAL_LOCATIONS;
得到具體資訊;
相關技術貼子聯結
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8109090/viewspace-873681/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle外部表的管理和應用Oracle
- ”innerHTML“的應用例項HTML
- oracle 例項表查詢Oracle
- Oracle外部表Oracle
- Oracle 外部表Oracle
- Oracle minus用法詳解及應用例項Oracle
- dd應用例項
- 【轉】Oracle 外部表Oracle
- hive應用例項1Hive
- 智慧Web應用例項Web
- calico docker 應用例項Docker
- 叢集的應用例項(zt)
- 水晶報表官方例項下載:報表和應用程式 (轉)
- jQuery動態載入更新外部樣式表程式碼例項jQuery
- oracle 外部表 external tableOracle
- Oracle外部表 External TableOracle
- Oracle外部表學習Oracle
- 介紹oracle外部表Oracle
- oracle sqlldr 與 外部表OracleSQL
- php和json的應用例項PHPJSON
- findmnt 命令的八個應用例項
- localStorage應用程式碼例項
- sqoop應用例項1OOP
- NCF的Dapr應用例項的執行
- ORACLE學習之外部表Oracle
- face_recognition的5個應用例項
- 大資料應用的真例項子大資料
- 基於規則的應用例項——流
- WebSocket 簡介及應用例項Web
- 機器視覺應用例項視覺
- redis應用場景及例項Redis
- python幾個應用例項Python
- opacity應用程式碼例項
- 基本複製應用例項(轉)
- 表單序列化應用程式碼相關程式碼例項
- oracle外部表的測試學習 (轉)Oracle
- oracle利用中游標取資料庫的結果集應用例項(轉)Oracle資料庫
- oracle rollup,cube子句的應用舉例;Oracle