修复 Oracle SQL 命令行 [关闭]
Posted
技术标签:
【中文标题】修复 Oracle SQL 命令行 [关闭]【英文标题】:fix Oracle SQL CMD line [closed] 【发布时间】:2020-11-16 16:47:46 【问题描述】:桌子在下面溢出。请告诉我如何解决它。请
【问题讨论】:
【参考方案1】:您只需要设置linesize
设置。 linesize 设置控制在换行前一行中出现多少个字符。
【讨论】:
【参考方案2】:好吧,设置 linesize
可能还不够 - col
是救星,因为它使您能够设置每一列的格式,以便输出看起来不错。此外,对于日期列,您甚至可能需要更改会话以设置默认日期格式(或使用带有适当格式掩码的 TO_CHAR
)。
这是一个演示:丑陋的输出:
SQL> select * from emp where rownum = 1;
EMPNO ENAME JOB MGR
---------- ---------- --------- ----------
HIREDATE SAL COMM
------------------- ---------- ----------
DEPTNO
----------
7369 SMITH CLERK 7902
17.12.1980 00:00:00 1000
20
设置列的格式:
SQL> col empno format 99999
SQL> col ename format a7
SQL> col job format a5
SQL> col mgr format 9999
SQL> col sal format 9999
SQL> col comm format 9999
SQL> col deptno format 999999
SQL> alter session set nls_date_format = 'dd.mm.yyyy';
Session altered.
让我们再试一次:
SQL> select * from emp where rownum < 5;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
------ ------- -------- ----- ---------- ----- ----- -------
7369 SMITH CLERK 7902 17.12.1980 1000 20
7499 ALLEN SALESMAN 7698 20.02.1981 1600 300 30
7521 WARD SALESMAN 7698 22.02.1981 1250 500 30
7566 JONES MANAGER 7839 02.04.1981 2975 20
SQL>
在您的查询中,那些 looooong 列:street_address, postal_code, city, state_province
是通过col
格式修复的最明显的候选者。试试看。
或:切换到GUI,如(免费)SQL Developer;您只需向左/向右滚动即可看到所有格式正确的内容。
【讨论】:
以上是关于修复 Oracle SQL 命令行 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章