9

一部のパッケージの DDL をスプールするために SQL Developer を使用していますが、サーバーがスプールしている場所を特定できません。Oracle は AIX にインストールされていますが、OS への接続に使用しているユーザーがわかりません。

基本的に、実行すると:

spool test.lst

select 1 from dual;

spool off

コンソールに確認メッセージが表示される

1                      
---------------------- 
1          

パスを指定しようとすると、おそらくユーザー権限が原因でエラーが発生します。

spool /tmp/test.lst
select 1 from dual;
spool off


Cannot create SPOOL file /tmp/test.lst 
1                      
---------------------- 
1             

だから私の質問はtest.lstはどこですか?

4

2 に答える 2

16

スプールはクライアント アクティビティであり、サーバー アクティビティではありません。ファイルは、.lst接続先のデータベースが存在するサーバーではなく、SQL Developer が存在するマシン上に作成されます。

Windows 7およびSQL Developer 3.1では、デフォルトで.lst%APPDATA%\Sql Developer\

などの特定のディレクトリにスプールすることがspool c:\windows\temp\test.lstできます。設定済みの場合は、のようなものを使用できますspool \\<aix-server>\<dir>\test.lst。もちろん、パスはクライアント OS によって異なります。

于 2012-07-27T10:37:41.030 に答える
0

私の LINUX インストールでは、デフォルトのスプール ディレクトリは、sqlplus を実行している場所にあります。すなわち。書き込み権限のないディレクトリから sqlplus を実行すると、失敗します。

「!」と入力してみてください。または、sqlplus プロンプトで「host」と入力して OS に移動します。ディレクトリが最終的に pwd になり、これがスプールの場所だと思います。

(exit と入力して sqlplus に戻ります)

于 2012-07-27T10:44:22.013 に答える