显示对 sqlcl 查询查询的完整响应
Showing full response on query on sqlcl query
我正在尝试在远程服务器上使用 sqlcl 来检索给定 oracle 数据库中 table 的 table 定义。
由于我必须在那里使用 cli,我不能简单地使用 SQLDeveloper 并从那里获取 table 定义(无法从服务器外部连接到数据库)。
想法是使用
select dbms_metadata.get_ddl('TABLE', table_name)
from user_tables where table_name = 'RESULTS';
为了获得 table 我需要的 table DDL。
但是,当我 运行 在 sqlcl 工具中进行此查询时,输出如下所示:
CREATE TABLE "AP29_QUDB"."RESULTS"
( "LOCATION_RESULT_UID" RAW(16) NOT NU
就是这样,没有更多信息了。
有人知道我如何获得要显示的查询的完整结果吗?
(或者简单地将它通过管道传输到一个文件,以便我将其复制出来)
非常感谢
-蒂姆
看起来 sqlcl 从 SQL*Plus 复制了 LONG 设置。默认情况下它只显示 CLOB 的前 80 个字符。可以使用 set long [some large number]'
.
更改该大小
SQL> select dbms_metadata.get_ddl('TABLE', 'DUAL', 'SYS') from dual;
DBMS_METADATA.GET_DDL('TABLE','DUAL','SYS')
--------------------------------------------------------------------------------
CREATE TABLE "SYS"."DUAL" SHARING=METADATA
( "DUMMY" VARCHAR2(1)
) PCT
SQL> set long 10000000
SQL> /
DBMS_METADATA.GET_DDL('TABLE','DUAL','SYS')
--------------------------------------------------------------------------------
CREATE TABLE "SYS"."DUAL" SHARING=METADATA
( "DUMMY" VARCHAR2(1)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 16384 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SYSTEM"
SQL>
我正在尝试在远程服务器上使用 sqlcl 来检索给定 oracle 数据库中 table 的 table 定义。
由于我必须在那里使用 cli,我不能简单地使用 SQLDeveloper 并从那里获取 table 定义(无法从服务器外部连接到数据库)。
想法是使用
select dbms_metadata.get_ddl('TABLE', table_name)
from user_tables where table_name = 'RESULTS';
为了获得 table 我需要的 table DDL。
但是,当我 运行 在 sqlcl 工具中进行此查询时,输出如下所示:
CREATE TABLE "AP29_QUDB"."RESULTS"
( "LOCATION_RESULT_UID" RAW(16) NOT NU
就是这样,没有更多信息了。
有人知道我如何获得要显示的查询的完整结果吗?
(或者简单地将它通过管道传输到一个文件,以便我将其复制出来)
非常感谢
-蒂姆
看起来 sqlcl 从 SQL*Plus 复制了 LONG 设置。默认情况下它只显示 CLOB 的前 80 个字符。可以使用 set long [some large number]'
.
SQL> select dbms_metadata.get_ddl('TABLE', 'DUAL', 'SYS') from dual;
DBMS_METADATA.GET_DDL('TABLE','DUAL','SYS')
--------------------------------------------------------------------------------
CREATE TABLE "SYS"."DUAL" SHARING=METADATA
( "DUMMY" VARCHAR2(1)
) PCT
SQL> set long 10000000
SQL> /
DBMS_METADATA.GET_DDL('TABLE','DUAL','SYS')
--------------------------------------------------------------------------------
CREATE TABLE "SYS"."DUAL" SHARING=METADATA
( "DUMMY" VARCHAR2(1)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 16384 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SYSTEM"
SQL>