当前位置: 首页 > 知识库问答 >
问题:

在sqlcl查询上显示查询的完整响应

裴成文
2023-03-14

我试图在远程服务器上使用sqlcl来检索给定oracle数据库中表的表定义
因为我必须在那里使用cli,所以我不能简单地使用SQLDeveloper并从那里获取表定义(不能从服务器外部连接到DB)。

想法是使用

select dbms_metadata.get_ddl('TABLE', table_name)
from user_tables where table_name = 'RESULTS';

为了得到我需要的表的表DDL
但是,当我在sqlcl工具中运行此查询时,输出如下所示:

 CREATE TABLE "AP29_QUDB"."RESULTS" 
 (  "LOCATION_RESULT_UID" RAW(16) NOT NU

就这样,没有更多的信息。

有人知道我如何获得要显示的查询的完整结果吗
(或者简单地通过管道将其传输到一个文件,以便我将其复制出来)

非常感谢你,蒂姆

共有1个答案

宓博实
2023-03-14

看起来sqlcl从SQL*Plus复制了LONG设置。默认情况下,它只显示CLOB的前80个字符。可以使用set long[某个大数字]'更改该大小。

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>
 类似资料:
  • 在hive中,我们可以“在table_name中显示列”,只获取表的列名,但我希望查询只显示Impala中表的列名,如何才能获取Impala中表的列名呢?

  • 问题内容: 当我发出SHOW PROCESSLIST查询时,信息列仅返回正在运行的SQL查询的前100个字符。 是否可以更改Mysql配置或发出其他类型的请求以查看完整查询(我正在查看的查询超过100个字符) 问题答案: 如果不使用,则“该字段中仅显示每个语句的前100个字符”。 使用phpMyAdmin时,还应单击“全文”选项(结果表左上角的“←T→”)以查看未删节的结果。

  • 我的数据库中只有大约16000个节点,当我匹配n返回n时,我从来没有得到任何图回来,任何原因或如何修复?

  • 问题内容: 我正在尝试从sql数据库中的php中显示结果,MySQL语句是正确的,并且可以在phpMyAdmin中执行我想要的操作,但是由于某种原因,我的代码在网页中中断了 这是代码 这就是我得到的 通常,我需要由表ID限制从最小值到最大值的随机数 问题答案: 您需要从查询获得的结果集中的每一行中获取数据。您可以为此使用。 将代码更改为此:

  • 问题内容: 我最近开始使用ElasticSearch。我尝试完成一些用例。我对其中一个有问题。 我已经用他们的全名为一些用户建立了索引(例如“ Jean-Paul Gautier”,“ Jean De La Fontaine”)。 我尝试让所有全名响应某个查询。 例如,我希望以“ J”开头的100个最全名 我得到的结果是全名的所有单词:“ Jean”,“ Paul”,“ Gautier”,“ De

  • 问题内容: 我有一个查询。现在,此查询当然返回一个结果集,我想要的是查询此查询的结果集,例如,我只希望上述查询具有唯一的名称。我应该提一下,我知道我可以在Query1中使用,但这只是一个示例,我的实际情况有些不同,我想知道的是是否可以查询上一个查询的结果集。我正在使用SQL Server 2012。 问题答案: 您可以使用该子句