Sql 在下面的代码中获取错误
我在下面的替换函数中发现缺少括号错误Sql 在下面的代码中获取错误,sql,oracle,plsql,Sql,Oracle,Plsql,我在下面的替换函数中发现缺少括号错误 declare file_name varchar2(10):= 'emp.csv'; begin execute immediate 'CREATE TABLE emp_external ( EMPNO NUMBER(4), emp_name varchar2(100), HIREDATE DATE ) ORGANIZATION EXTERNAL (TYPE ORACLE_LOADER DEFAULT DIRECTO
declare
file_name varchar2(10):= 'emp.csv';
begin
execute immediate 'CREATE TABLE emp_external
(
EMPNO NUMBER(4),
emp_name varchar2(100),
HIREDATE DATE
)
ORGANIZATION EXTERNAL
(TYPE ORACLE_LOADER
DEFAULT DIRECTORY import
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOAD WHEN
(HIREDATE != BLANKS )
fields terminated by '''||','||'''
( EMPNO,
replace(emp_name,'''||'"'||','||''||'''),
HIREDATE DATE '||'yyyymmdd'||'
)
)
LOCATION ('''||file_name||''')
)
REJECT LIMIT UNLIMITED';
end;
当我查询外部表时,它给我的错误是“EMP_NAME”是错误的标识符我不习惯plsql,但你不会漏掉一个逗号吗 EMPNO编号(4),
emp_name varchar2(100),你算过左边(和右边)吗?哈恩,但我不知道该把它放在哪里。它在字段替换中给出了错误(emp_name,“| |'”,“| |'”),一个小提示:如果不使用
|
操作符连接静态字符串,代码将更易于维护。您希望这个替换函数对文件中的emp_名称进行什么样的精确修改?我的文件看起来像103,“ABC”,12-03-15 104,“ERT”“,12-03-15如果您取消更换功能,它是否工作<代码>以“| |”和“| |”结尾的字段(EMPNO、emp|u名称、雇佣日期“| | yyyymmdd”| |”)