Използвайте външни таблици на Oracle.
Вижте също напр.
- OraFaq за външни таблици
- Какво мисли Том за външните маси
- Бележки на Рене Нифенегер за външни маси
Прост пример, с който трябва да започнете
Имате нужда от файл, разположен в директория на сървъра (запознайте се с обектите на директорията):
SQL> select directory_path from all_directories where directory_name = 'JTEST';
DIRECTORY_PATH
--------------------------------------------------------------------------------
c:\data\jtest
SQL> !cat ~/.gvfs/jtest\ on\ 192.168.xxx.xxx/exttable-1.csv
1,a
3,bsdf
4,sdkfj
5,something
129,else
Създайте външна таблица:
create table so13t (
id number(4),
data varchar2(20)
)
organization external (
type oracle_loader
default directory jtest /* jtest is an existing directory object */
access parameters (
records delimited by newline
fields terminated by ','
missing field values are null
)
location ('exttable-1.csv') /* the file located in jtest directory */
)
reject limit unlimited;
Сега можете да използвате всички възможности на SQL за достъп до данните:
SQL> select * from so13t order by data;
ID DATA
---------- ------------------------------------------------------------
1 a
3 bsdf
129 else
4 sdkfj
5 something