我想在类文件中的csv文件上运行sql命令,我遇到this project并且能够在csv上成功运行sqls,但我想运行一个从csv获取的查询而且从oracle表中,有没有办法实现相同的
答案 0 :(得分:0)
您可以创建一个将由csv文件添加的外部表:
创建外部表的示例:
1)创建目录MY_CSV为' / home / oracle / my_csv&#39 ;;注意: / home / oracle / my_csv必须是磁盘上的物理位置。
2)授予读取权限,将目录MY_CSV写入斯科特;
4)
create table my_ext_table ( ENAME VARCHAR2(10), DNAME VARCHAR2(14), JOB VARCHAR2(9) ) organization external ( type ORACLE_LOADER default directory MY_DIR access parameters ( records delimited by newline fields terminated by "~" ) location ('myfile.csv') ) reject limit unlimited;
外部表功能是对现有SQL * Loader功能的补充。它使您可以访问外部源中的数据,就像它在数据库中的表中一样。
然后加入这两个表(数据库和外部)
外部表的主要缺点是您无法在此类表上创建任何索引,因此选择数据可能会相当慢。