我正在使用 PL/SQL Developer 版本 11.0.6.1776
以下脚本在指定路径上创建一个名为“test”的文件夹,并在其中创建一个子文件夹,其中包含当前假脱机以将其元数据存储在该文件夹中的表的名称:
set pagesize 0
set long 90000
set linesize 10000
SET TERMOUT OFF
spool out.sql
select 'host mkdir ''C:\Users\personal\test'''||';'||chr(13)||chr(10)|| --Creating the new folder
'host mkdir '||''''||'C:\Users\afpuchn\test\'||REPLACE(table_name, '$', '_')||''''||';'||chr(13)||chr(10)|| --Creating a subfolder
'spool C:\Users\personal\test\'||REPLACE(table_name, '$', '_')||'\'||REPLACE(table_name, '$', '_')||'.txt'||chr(13)||chr(10)||
'SELECT DBMS_METADATA.GET_DDL'||chr(13)||chr(10)||
'(''TABLE'','''||table_name||''',''MTO_TABL'') '||chr(13)||chr(10)||
'FROM DUAL;'||chr(13)||chr(10)|| --Extracting metadata
'spool off' as cmd
FROM MTTO_TAB_EXIST_ALL tea
WHERE tea.MRK_DEL_PERM = 'Y'
AND tea.OWNER_NAME = 'MTO_TABL'
AND ROWNUM < = 5;
spool off
@OUT.SQL
exit
每当我运行脚本时,我想为存储在创建的文件夹中的文件命名的名称不完整或指定的文件类型不完整。
以下是返回的脚本示例:
host mkdir 'C:\Users\personal\test';
host mkdir 'C:\Users\personal\test\ED_EXTR_CSV_PRIM_DEA_PUBLI';
spool C:\Users\afpuchn\test\ED_EXTR_CSV_PRIM_DEA_PUBLI\ED_EXTR_CSV_PRIM_DEA_PU --The file name is incomplete
SELECT DBMS_METADATA.GET_DDL
('TABLE','ED_EXTR_CSV_PRIM_DEA_PUBLI','MTO_TABL')
FROM DUAL;
spool off
因此,即使我放了一个SET LINESIZE
不起作用的人,脚本也无法存储在给定的路径中。我的 PL/SQL 版本与此有什么关系吗?