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
- Oracle minus用法詳解及應用例項Oracle
- Oracle 外部表Oracle
- ”innerHTML“的應用例項HTML
- dd應用例項
- NCF的Dapr應用例項的執行
- 4.1. Oracle例項Oracle
- Oracle Far Sync例項Oracle
- face_recognition的5個應用例項
- WebSocket 簡介及應用例項Web
- 機器視覺應用例項視覺
- redis應用場景及例項Redis
- oracle資料庫與oracle例項Oracle資料庫
- 模板與例項在系統中的應用
- eMarketer:各行業VR例項應用分析行業VR
- [20191115]oracle例項佔用記憶體計算.txtOracle記憶體
- Cookie、localStorage 和 sessionStorage 的區別及應用例項CookieSession
- 用圖表和例項解釋 Await 和 AsyncAI
- 英國政府部門RPA應用例項
- 觀察者模式應用場景例項模式
- Docker開發例項之應用場景Docker
- Hive 分析函式lead、lag例項應用Hive函式
- C#雜湊表的例項C#
- Linkerd 2.10(Step by Step)—4. 如何配置外部 Prometheus 例項Prometheus
- PHP 完整表單例項PHP單例
- 物件導向的例項應用:圖形計算器物件
- SAP UI5 應用中 MockServer 的例項化方法UIMockServer
- webpack+react+antd單頁面應用例項WebReact
- 【Oracle】ASM例項安裝入門OracleASM
- oracle 10203啟動例項報警Oracle
- oracle監聽不到例項服務Oracle
- 【oracle 多種形式的外部表匯入、匯出】實驗Oracle
- cluster例項運用
- PHP的時間日期與例項應用:日曆核心程式PHP
- 在Cucumber中應用 PicoContainer容器實現元件的例項化AI元件
- 收藏篇:低功耗模組軟體的PWM應用例項
- 關於 Angular 應用 Components 和 Directives 的例項化問題Angular
- JFreeChart圖表製作例項
- 【深度學習】--DCGAN從入門到例項應用深度學習