And*_*anu 2 sql oracle production-environment
场景:
sqlldr(SQL Loader),我必须创建一个包含CSV中所有数据的临时表.您如何建议进行所有这些处理,以便我不会影响生产环境的整体性能?
(注意:我不应该预先处理.csv).
任何建议将受到高度赞赏!
Bob*_*ica 10
我知道你说你想要使用SQL Loader,但你可能想看看使用外部表,因为它可能会让事情变得更容易.您可以将外部表声明为类似的东西
create table EXTERNAL_HR_DATA (
EMPNO NUMBER(4),
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2))
Organization external
(type oracle_loader
default directory testdir
access parameters (records delimited by newline
fields terminated by ‘,’)
location (‘emp_ext.csv’))
reject limit 1000;
Run Code Online (Sandbox Code Playgroud)
这将允许您使用标准SELECT语句读取(但不更改)文件中的数据.然后,您可以从外部表中选择SELECT并直接将数据插入到'temp'表中,在INSERT期间至少进行一些编辑:
INSERT INTO TEMP_HR_DATA
SELECT EMPNO,
UPPER(TRIM(ENAME)),
UPPER(TRIM(JOB)),
MGR,
HIREDATE,
SAL,
COMM,
DEPTNO
FROM EXTERNAL_HR_DATA;
Run Code Online (Sandbox Code Playgroud)
分享和享受.
| 归档时间: |
|
| 查看次数: |
327 次 |
| 最近记录: |