67

スキーマからいくつかのオブジェクトの ddl を見つけるためのクエリがいくつかあります。取得している結果列は、クエリの途中で切り捨てられます。

列の幅を増やすにはどうすればよいですか?

で試しました

SET SERVEROUTPUT ON SIZE 1000000;
SET LINESIZE 50000;
set pagesize 50000;
set long 50000;

しかし、私はまだ同じ結果を得ています。

4

10 に答える 10

82

次のコマンドを使用しました。

SET LIN[ESIZE] 200

( http://ss64.com/ora/syntax-sqlplus-set.htmlから)。

編集: わかりやすくするために、有効なコマンドはSET LIN 200またはSET LINESIZE 200です。

これは問題なく動作しますが、コンソール ウィンドウの幅が十分であることを確認する必要があります。MS Windows コマンド プロンプトから SQL Plus を直接使用している場合、コンソール ウィンドウは、SQL Plusの仕様に関係なく、"Screen Buffer Size Width " プロパティの設定に関係なく、行を自動的に折り返します。LINESIZE

@simplyharsh で提案されているように、COLUMN col_name FORMAT Ax( xは希望の長さ (文字数))を使用して、設定された幅を表示するように個々の列を構成することもできます。コンソール画面での値の。

于 2012-08-23T08:31:00.027 に答える
14

これを試して

COLUMN col_name FORMAT A24

ここで、24はあなたの幅です。

于 2011-09-12T08:00:04.403 に答える
10

Linux では、以下を試してください。

set wrap off
set trimout ON
set trimspool on
set serveroutput on
set pagesize 0
set long 20000000
set longchunksize 20000000
set linesize 4000
于 2015-08-03T09:18:06.787 に答える
4

LordScreeが提案したように、LINESIZEの設定に加えて、コンソール幅の問題を克服するために、ファイルに出力するように指定することもできます。これが私がそれをする方法です:

set linesize 15000;
spool myoutput.txt;
SELECT 
...
spool off;
于 2013-01-24T12:24:48.710 に答える
2

私が使用するもの:

set long 50000
set linesize 130

col x format a80 word_wrapped;
select dbms_metadata.get_ddl('TABLESPACE','LM_THIN_DATA') x from dual;

または、何か不足していますか?

于 2015-03-05T21:56:53.597 に答える
-4

Windowsでは、これを試すことができます:

  • sqlplus ウィンドウを右クリックします。
  • プロパティを選択 -> レイアウト
  • 画面バッファサイズの幅を 1000 に増やします
于 2015-02-07T06:10:13.573 に答える