OSDN Git Service

Upgrade to 4.2.0
[stew/Stew4.git] / MANUAL_ja.md
1 % Stew4 ユーザーマニュアル
2 %
3 % version 4.2
4
5
6 ## Stewとは何ですか?
7
8 Stewは、JDBCを使った小規模なデータベースフロントエンドです。
9 コマンドラインのようなインターフェイスを持っていて、SQLを入力して実行したりできます。
10 ちょっとした処理であれば、バッチのように使用することもできます。
11
12 概要については、README_ja.mdをご覧ください。
13
14
15
16 ## 使用上の注意
17
18
19 ### パスワードの保存方式
20
21 パスワードは、デフォルトではそのまま保存します。
22 生のパスワードを保存したくない場合は、暗号化を利用できます。
23
24 詳しくは、[使い方-接続設定](#接続設定)を参照してください。
25
26
27 ### コネクション切断時はrollbackしない
28
29 デフォルトでは、disconnectコマンドによりコネクションを切断するとき、rollbackを発行しません。
30 DBMSによっては、トランザクションが自動的にコミットされてしまうことがありますので注意が必要です。
31
32 「切断時に自動ロールバック」を設定すると、disconnectの際に自動的にrollbackを発行します。
33 詳細は、[使い方-接続設定](#接続設定)を参照してください。
34
35
36 ### その他
37
38 プロジェクトサイトにて追加説明を行っていますので、あわせてご利用ください。
39
40 - <http://stew.sourceforge.jp/>
41 - <http://argius.net/wiki/index.php?Stew%20tutorial> (argius.net)
42
43
44
45 ## インストール
46
47 Java実行環境バージョン6(JRE6)以上がインストールされている必要があります。
48 また、利用するデータベースのJDBCドライバが必要です。
49
50 リリースパッケージ(通常はzipファイル)を任意のディレクトリに展開します。
51
52 インストールサイズを最小限にしたい場合は、
53 リリースパッケージに含まれている"stew.jar"だけを展開してください。
54
55 起動コマンドの設定は、次の起動方法を参照してください。
56
57
58
59 ## 起動方法
60
61 GUIモードで起動する場合は、以下のコマンドを実行します。
62
63     > java -jar stew.jar --gui
64
65 CUIモードで起動する場合は、以下のコマンドを実行します。
66
67     > java -jar stew.jar --cui
68
69
70 起動スクリプトもしくはショートカットやエイリアスを作成しておくと便利です。
71 stew.propertiesに以下の設定を追加すれば、JarファイルのダブルクリックでGUI起動できるようになります。
72
73     stew.boot=GUI
74
75
76 Stewを実行すると、システムディレクトリ".stew"が作成され、設定の保存に使用されます。
77 ".stew"ディレクトリは、デフォルトではカレントディレクトリに作成されます。
78
79
80
81 ## アンインストール
82
83 インストールしたファイルと".stew"ディレクトリを削除してください。
84
85
86 ----------------------------------------------------------------------------------------------------
87
88 ## 使い方
89
90 Stewを使用するには、JDBC接続が可能なデータベースと、JDBCドライバが必要です。
91 JDBCドライバ自体の詳細については、各データベースの説明書などを参照してください。
92
93
94 ### 接続設定
95
96 CUIの場合は、起動時に--editオプションを指定、またはコマンドとして--editを実行すると、
97 編集プログラムが起動します。
98
99 GUIの場合は、メニューの"接続設定"を実行すると、編集ダイアログが開きます。
100
101
102 それぞれの設定項目の説明は次のとおりです。
103
104 コネクタID
105 :   connectコマンドなどに渡すIDです。英数字のみ指定できます。
106
107 コネクタ名
108 :   プロンプトに表示される接続名です。文字制限は特にありません。
109
110 クラスパス
111 :   JDBCドライバのクラスパスを指定します。Javaの-CLASSPATHオプションと同じ形式で指定します。
112
113 ドライバ
114 :   JDBCドライバのDriver実装クラスを指定します。GUIの場合、クラスパスが指定されていれば、
115     "ドライバの検索"から選択できます。
116
117 接続先URL
118 :   JDBCのURL(DriverManager.getConnection(url)に指定するurlと同じもの)を指定します。
119
120 ユーザ
121 :   JDBCのURLと同時に指定するユーザIDを指定します。
122
123 パスワード
124 :   ユーザIDのパスワードを指定します。
125
126 暗号化処理
127 :   パスワードの保存方法を選択します。次項"パスワードの保存について"を参照してください。
128
129 読取専用
130 :   コネクションをREADONLYに設定し、更新の有るコマンドを実行できないようにします。
131     (コマンド側のReadOnlyに拠る。)
132
133 自動ロールバック
134 :   設定すると、切断時に自動でロールバックします。
135
136 これらの情報は、".stew/connectors.properties"に保存されます。
137 手動で編集することもできますが、その際は注意して行ってください。
138
139
140 ### パスワードの保存について
141
142 パスワードは設定ファイルに保存されるため、そのまま保存すると都合が悪い場合があります。
143
144 パスワードの保存方法は、暗号化処理を選択することができます。
145
146 PlainTextPassword
147 :   (デフォルト)パスワードをそのまま保存します。
148
149 PbePassword
150 :   PBE暗号を使用してパスワードを保存します。
151     [メニュー-暗号鍵の入力](#コマンドc---暗号鍵の入力k)で暗号鍵を入力した後、
152     接続設定でパスワードを入力して保存すると、暗号化された状態で保存します。
153     次回起動時、再度暗号鍵を入力するまで、パスワードが復号できなくなります。
154
155 独自のパスワード暗号化を追加することもできます。
156 (実装詳細:Passwordインタフェースの実装クラスを追加します。)
157
158
159 ### 無名接続
160
161 接続設定なしで接続を行うことができます。
162 ドライバが特定できるようになっている必要があります。(次の段落で説明)
163
164     > connect <user>/<password>@<URL>
165
166     (例)
167     > connect user/password1@jdbc:firebirdsql://127.0.0.1//home/argius/test.fdb
168
169 最も簡単な方法は、ドライバファイルを起動ディレクトリに置くだけです。
170 ドライバ名が指定されていない場合は、このファイルの中を探索してドライバ名を特定します。
171 但し、この探索は時間がかかるので、時間を節約するには"jdbc.drivers"システムプロパティを
172 指定してください。
173
174
175 ### 対話モード
176
177 通常の起動では、対話モードでの操作となります。
178 対話モードでは、コマンド入力待ち状態になった時にコマンドを入力し、
179 処理が終わると再びコマンド入力待ちになります。
180
181
182 ### 一行完結モード(One-Liner)
183
184 Stewの処理が一行の入力で完結します。
185 "stew"コマンドを設定していると仮定すると、次のような形式で実行します。
186
187     > stew <connector-id> <command>
188
189 実行すると、&lt;connector-id&gt;の接続設定で接続を開始し、その接続を使用してコマンドを実行します。
190 コマンド実行後、接続を切断して終了します。
191
192 このモードでは、ご利用のshell環境の制約(例えば、ワイルドカード,リダイレクト など)を
193 受けますのでご注意ください。
194
195
196 ### エイリアス(alias)
197
198 長いコマンドに別名(alias)をつけて、短縮コマンドとして利用できます。
199 詳しくは、コマンド[alias](#alias - エイリアス(コマンド別名)の登録 (組み込みコマンド)),
200 [unalias](#unalias - エイリアス(コマンド別名)の解除 (組み込みコマンド))を参照してください。
201
202
203 ----------------------------------------------------------------------------------------------------
204
205 ## コマンド(Stew内部コマンド)
206
207 組み込みコマンドは、Stewから切り離すことができないコマンドです。
208 それ以外は、追加コマンドとして実装されています。
209 (実装詳細:追加コマンドはCommandクラスのサブクラスによる実装ですが、
210   組み込みコマンドはCommand.invokeメソッドに直接書かれている処理です。)
211
212 コマンドでない文が指定された場合は、SQLとして実行されます。
213 バインド変数のあるSQL文を使う場合は、最後に";"(セミコロン)をつけ、
214 それ以降にカンマ区切りでパラメータを指定できます。
215 この機能は、一部のコマンドでも利用できます。
216
217 組み込みコマンドのうち、connect/-e/-f/alias/unalias/exitは接続時以外でも使用できます。
218
219
220 ### connect - データベースに接続する (組み込みコマンド)
221
222     > connect <connector-id>
223     > -c <connector-id>
224
225 予め用意した接続設定を使用して、データベースに接続します。
226
227 対話モードでは、disconnectまたは強制的に切断されるまで、接続が維持されます。
228 すでに接続中の場合は、その接続を切断してから接続を行います。
229
230
231 ### disconnect - データベースとの接続を切断する (組み込みコマンド)
232
233     > disconnect
234     > -d
235
236 データベースとの接続を切断します。
237
238 接続設定でrollbackを指定している場合は、rollbackを試みます。
239
240
241 ### commit - トランザクションのコミット (組み込みコマンド)
242
243 現在のトランザクションでの変更をコミットします。
244
245 **コミットする際は、誤って必要なデータを削除しないよう注意してください。**
246
247
248 ### rollback - トランザクションのロールバック (組み込みコマンド)
249
250 現在のトランザクションでの変更をロールバックします。
251
252
253 ### -e - 複数コマンドの評価 (組み込みコマンド)
254
255     > -e <コマンド> -e <コマンド> ...
256
257 コマンドを連続して実行させます。
258 exportなどを同時に実行する場合や、コマンドラインからの実行の場合に使います。
259
260
261 ### -f - ファイル内容をコマンドとして実行 (組み込みコマンド)
262
263     > -f <ファイル>
264
265 ファイルの内容をコマンドとして実行します。
266 再帰的に指定できますが、無限ループは検知できないので注意してください。
267
268
269 ### -s - スクリプトとして実行 (組み込みコマンド) \<バージョン4.1の更新機能\>
270
271     > -s . | <スクリプトファイル> | <スクリプト言語名> <スクリプトコード>
272
273  1. 最初の引数が"."(ピリオド)の場合、スクリプトコンテキストはリセットされます。
274  2. 最初の引数が拡張子付きのファイル名の場合、拡張子でスクリプト言語を特定し、ファイルをそのスクリプト言語のスクリプトファイルとして実行します。
275  3. それ以外の場合、最初の引数はスクリプト言語名として認識され、残りの引数はそのスクリプト言語のスクリプトコードとして実行されます。
276
277 組み込み(JavaScript)以外のスクリプト言語を使うには、JRuby、Jython、Groovyなど、言語ごとのスクリプトエンジンが必要です。
278
279 スクリプトコンテキストは、グローバルスコープのバインディング(すなわちグローバル変数)を保持します。
280 スクリプトコンテキストをリセットしたい場合は、前述のとおり、" -s . "を入力します。
281
282 スクリプト内では、以下の変数が定義済みになります。
283
284  * 接続中のコネクション: connection, conn
285  * パラメーター: parameter, p
286  * 出力制御: outputProcessor, op
287
288
289 ### cd - カレントディレクトリの移動 (組み込みコマンド)
290
291     > cd <ディレクトリ>
292
293 カレントディレクトリを指定したディレクトリに移動します。
294 (このカレントディレクトリはStew内部で管理するものです。)
295
296
297 ### @ - 場所の表示 (組み込みコマンド)
298
299     > @
300
301 カレントディレクトリとシステムディレクトリの場所を表示します。
302
303
304 ### ? - システムプロパティ (組み込みコマンド)
305
306     > ? [<プロパティ名> [<プロパティ名2> ... <プロパティ名n>]]
307
308 指定されたシステムプロパティを表示します。(System.getProperty)
309
310 引数を指定しない場合は、JRE,OS,Localeの情報を表示します。
311
312     > ?
313     JRE : ...
314     OS : ...
315     Locale : ja_JP
316     > ? java.version user.timezone zzz
317     java.version=[1.6.0_##]
318     user.timezone=[Asia/Tokyo]
319     zzz=undefined
320
321
322 ### alias - エイリアス(コマンド別名)の登録 (組み込みコマンド)
323
324     > alias [<エイリアス> [<コマンド>]]
325
326 コマンド別名を登録します。
327 引数が1つで実行した場合は、既に設定されたコマンド内容を表示します。
328 引数なしで実行した場合は、すべての定義済みエイリアスを表示します。
329
330 登録または表示の前にファイルからメモリ上の情報を最新化します。
331 ファイルを直接修正したり、他のスレッドで変更した内容を反映させたい場合は、
332 このコマンドを実行してください。
333 (実装詳細:循環参照などの無限ループ抑制のために、展開の深さは最大100。)
334
335     > alias
336     エイリアスは未定義です。
337     > alias search select * from
338     > alias count select count(*) from
339     > alias search
340     alias search=[select * from]
341     > search table1
342     >> select * from table1
343     (select * from table1 の結果)
344     >
345
346
347 ### unalias - エイリアス(コマンド別名)の解除 (組み込みコマンド)
348
349     > unalias <エイリアス>
350
351 コマンド別名を解除します。解除する対象がない場合は何もしません。
352 解除対象の有無にかかわらず、ファイルからメモリ上の情報を最新化します。
353
354
355 ### exit - 終了 (組み込みコマンド)
356
357     > exit
358
359 Stewを終了します。確認待ちは行いません。
360
361 接続中の全てのコネクションは自動的に切断されます。
362 ロールバックは、自動ロールバックを設定しているコネクタのみ行われます。
363 自動ロールバックについては、[使い方-接続設定](#接続設定)を参照してください。
364
365
366 ### load - ファイルから実行
367
368     > load [<SQLファイル> | <データファイル> <テーブル名> [ HEADER ]]
369
370 指定されたファイルを読み込んで、SQLを実行します。
371
372 パラメータが1個の場合は、ファイルをSQL文と見なして実行します。
373
374 パラメータが2個以上の場合は、ファイルをデータファイルと見なして、インポートを実行します。
375 ファイルの拡張子によって、ファイル形式が自動的に選択されます。
376 (実装詳細:基本的にはimportと同じ動作ですが、バッチ実行ではなく1件ずつ処理されます。)
377
378  * .csv : CSV形式
379  * .xml : XML形式(定義:src/net/argius/stew/io/stew-table.dtd)
380  * 上記以外 : TAB区切りテキスト形式
381
382
383 ### import - ファイルのインポート
384
385     > import [<データファイル> <テーブル名> [ HEADER ]]
386
387 ファイルをデータファイルと見なして、インポートを実行します。
388 ファイルの拡張子によって、ファイル形式が自動的に選択されます。
389 (実装詳細:基本的には、loadのパラメータ2個以上指定した時と同じ動作ですが、
390   Statement.addBatch()を使用します。)
391
392  * .csv : CSV形式
393  * .xml : XML形式(定義:src/net/argius/stew/io/stew-table.dtd)
394  * 上記以外 : TAB区切りテキスト形式
395
396 一括で処理する件数を[#property.Import.batch.limit:プロパティ]で設定することができます。
397
398
399 ### export - 検索結果のエクスポート
400
401     > export <ファイル> [ HEADER ] [command(select|find|report)]
402
403 指定したファイルに、コマンドの検索結果を出力します。
404 ファイルの拡張子によって、ファイル形式が自動的に選択されます。
405
406  * .htm,.html : HTML形式
407  * .csv : CSV形式
408  * .xml : XML形式(定義:src/net/argius/stew/io/stew-table.dtd)
409  * 上記以外 : TAB区切りテキスト形式
410
411
412 ### time - 実行時間計測
413
414     > time [<回数>] <SQL文>
415
416 指定したSQL文を実行し、その実行時間を計測して表示します。
417
418 回数が指定された場合は、回数分SQLを繰り返し実行して、
419 「合計」「平均」「最大」「最小」を集計します。
420 回数を指定しない場合は、1回の実行時間を表示します。
421
422     > time select * from EMPLOYEE
423     実行時間 : 0.093 秒
424     > time 100 select * from EMPLOYEE
425     合計 : 0.484 秒
426     平均 : 0.005 秒
427     最大 : 0.094 秒
428     最小 : 0.000 秒
429     >
430
431
432 ### find - テーブル名検索
433
434     > find <テーブル名パターン> [<テーブル種別パターン> [<スキーマ名パターン> [<カタログ名パターン> [ FULL ]]]]
435
436 参照可能なテーブルの一覧を表示します。
437 "パターン"というキーワードを含むパラメータは、ワイルドカード(#,?)が指定できます。
438
439
440 ### report - データベース情報表示
441
442     > report - | <テーブル名> [ FULL | PK | INDEX ]
443
444 接続中のコネクションに関する情報を表示します。
445
446 -(ハイフン)が指定された場合は、DBとJDBCドライバの名称とバージョン、
447 接続ユーザとアドレスを表示します。
448
449 テーブル名のみが指定された場合は、テーブルの列情報が表示されます。
450
451 テーブル名とオプションが指定された場合は、PKを指定するとプライマリキーの一覧が、
452 INDEXを指定するとインデックスキーの一覧が、それぞれ表示されます。
453 FULLを指定すると、API(DatabaseMetaData#getColumns)が返すすべての列が表示されます。
454
455
456 ### download - 1データごとにダウンロード
457
458     > download <ルートディレクトリ> SELECT <ダウンロードするデータの列> [, ファイルパス...] FROM ...
459
460 1つの列のデータをダウンロードしてファイルに保存します。
461
462 どのデータ型でも利用できます。
463 長めのテキスト項目やラージオブジェクト(BLOB,CLOB)を一挙にファイルに保存する場合などに有用です。
464
465 ファイルは、複数ファイルをダウンロードできるようにするため、
466 データからファイル名を生成できるようになっています。
467
468 ファイル名は、2列目以降の列を文字列として結合したものとなります。
469 これはプライマリキーと拡張子を指定することを想定しています。
470
471     > download emp select FULL_NAME, JOB_COUNTRY, '/', EMP_NO, '.txt' from EMPLOYEE
472     ディレクトリ[./emp/USA]を作成しました。
473     ダウンロードされました。 (0.014 Kbytes, file=[./emp/USA/2.txt])
474     ダウンロードされました。 (0.012 Kbytes, file=[./emp/USA/4.txt])
475      ・
476      ・
477      ・
478     ダウンロードされました。 (0.012 Kbytes, file=[./emp/USA/24.txt])
479     ディレクトリ[./emp/England]を作成しました。
480     ダウンロードされました。 (0.011 Kbytes, file=[./emp/England/28.txt])
481      ・
482      ・
483      ・
484     ダウンロードされました。 (0.018 Kbytes, file=[./emp/USA/145.txt])
485     42 件 ヒットしました。
486
487 データが1件の場合は、データ列のみ指定すれば、
488 ファイルパスの前半部分がそのままファイル名となります。
489
490 同名のファイルが存在したり、ディレクトリ作成時に権限が無い場合はエラーとなり、
491 その時点で処理を中断します。
492
493
494 ### upload - ファイル内容を1データとして登録
495
496     > upload <ファイルパス> <INSERT文 or UPDATE文>
497
498 SQLのプレースホルダで指定された列にファイル内容を登録します。
499
500
501 ### wait - 待機
502
503     > wait 秒(小数第3位まで指定可)
504
505 指定された秒数、待機します。
506
507 連続したコマンドを実行する場合などに使えるかもしれません。
508
509
510
511 ## GUIモード・メニュー
512
513 GUIモードのメニューについての説明です。
514
515
516 ### ファイル(F) - 新しいウィンドウ(N) Ctrl-N
517
518 新しいウィンドウを開きます。
519
520 新しいウィンドウは、元のウィンドウとは独立した接続で処理が行われます。
521
522
523 ### ファイル(F) - 閉じる(C) Ctrl-W
524
525 ウィンドウを閉じます。
526 コネクションが接続中の場合は、確認ダイアログを表示します。
527
528 開いているウィンドウが1つの場合は、終了(X)と同じ動作となります。
529
530
531 ### ファイル(F) - 終了(X) Ctrl-Q
532
533 アプリケーションを終了します。
534 確認ダイアログが表示され、"はい"を選択すると終了します。
535
536
537 ### 編集(E) - 切り取り(T) Ctrl-X
538
539 選択範囲をクリップボードにコピーして、選択された部分を削除します。
540 (基本的に、一般的なアプリケーションと同じ処理です。)
541
542
543 ### 編集(E) - コピー(C) Ctrl-C
544
545 選択範囲をクリップボードにコピーします。
546 (基本的に、一般的なアプリケーションと同じ処理です。)
547
548
549 ### 編集(E) - 貼り付け(P) Ctrl-V
550
551 カーソル位置にクリップボードの内容を貼り付けます。
552 (基本的に、一般的なアプリケーションと同じ処理です。)
553
554
555 ### 編集(E) - すべて選択(A) Ctrl-A
556
557 選択している領域(テーブルまたは入出力欄)を全選択状態にします。
558
559
560 ### 編集(E) - 検索(F) Ctrl-F
561
562 選択している領域(テーブル、テーブル列名、入出力欄、情報ツリー)内の文字列を検索します。
563
564 テーブル、テーブル列名はセル単位で検索します。
565 入出力欄は、一致部分をハイライトします。
566 情報ツリーは、選択しているノードと同じ深さのノードとそれらのサブノード単位で検索します。
567
568 オプションで、「正規表現を使用する」「大文字と小文字を区別しない」が指定できます。
569
570
571 ### 編集(E) - フォーカス切替(G) Ctrl-G \<バージョン4.2の更新機能\>
572
573 データベース情報ツリー、検索結果エリア、入力欄の間でフォーカスを入れ替えます(toggle)。
574
575
576 ### 編集(E) - メッセージのクリア
577
578 入出力欄のメッセージをクリアします。
579
580
581 ### 表示(V) - ステータス バー(B)
582
583 選択された場合、ウィンドウの下部にステータスバーを表示します。
584
585 設定は保存されます。
586
587
588 ### 表示(V) - 列番号を表示(C)
589
590 選択された場合、検索結果の列名に番号を付けます。
591
592
593 ### 表示(V) - 情報ツリーペインを表示(I)
594
595 選択された場合、データベース情報ツリーペインを表示します。
596
597
598 ### 表示(V) - 常に手前に表示(T)
599
600 選択された場合、ウィンドウを常に手前に表示するようにします。
601
602
603 ### 表示(V) - 最新状態に更新(R) F5
604
605 検索結果を表示した際のクエリを再発行して、最新状態を表示します。
606
607
608 ### 表示(V) - 列幅を拡大(W) Ctrl-.(period)
609
610 検索結果の列幅をそれぞれ1.5倍に拡大します。
611
612
613 ### 表示(V) - 列幅を縮小(N) Ctrl-,(comma)
614
615 検索結果の列幅をそれぞれ2/3に縮小します。
616
617
618 ### 表示(V) - 列幅を調整(A) Ctrl-/(slash)
619
620 検索結果の列幅を自動調整します。次項の「列幅自動調整」で選択されたモードで調整されます。
621
622
623 ### 表示(V) - 列幅自動調整(M)
624
625 検索結果表示時に、検索結果の列幅を自動調整するモードを選択します。
626
627  * なし(N) : 自動調整を行いません。
628  * ヘッダ基準(H) : ヘッダ名のサイズを基準に、各列幅を自動調整します。
629  * 値基準(V) : 列の中で最も長い値のサイズを基準に、各列幅を自動調整します。
630  * ヘッダと値基準(A) : ヘッダを含めて、列の中で最も長い値のサイズを基準に、各列幅を自動調整します。
631
632
633 ### コマンド(C) - 実行(X) Ctrl-M
634
635 コマンドを実行します。入出力欄でエンターキーを押したのと同じ効果があります。
636
637
638 ### コマンド(C) - 中断(B) Ctrl-Pause(Break)
639
640 コマンドを中断します。サーバ側の処理はキャンセルされません。
641
642
643 ### コマンド(C) - 前のコマンド履歴(P) Ctrl-↑
644
645 コマンド履歴を1つ遡ります。
646
647
648 ### コマンド(C) - 次のコマンド履歴(N) Ctrl-↓
649
650 コマンド履歴を1つ進みます。
651
652
653 ### コマンド(C) - 次のコマンド履歴(N) Ctrl-↓
654
655 コマンド履歴を1つ進みます。
656
657
658 ### コマンド(C) - コマンド履歴を全表示(A) \<バージョン4.2の追加機能\>
659
660 すべてのコマンド履歴をダイアログで表示し、そこからコマンド履歴を選択して貼りつけることができます。
661
662
663 ### コマンド(C) - ロールバック(R)
664
665 確認ダイアログを表示し、OKを押すとロールバックを実行します。
666
667
668 ### コマンド(C) - コミット(M)
669
670 確認ダイアログを表示し、OKを押すとコミットを実行します。
671
672
673 ### コマンド(C) - 接続(C) Ctrl-E
674
675 接続リストを表示します。
676 接続リストで接続したい接続IDを選択して"了解"を押すと、connectと同じ処理が実行されます。
677
678
679 ### コマンド(C) - 切断(D) Ctrl-D
680
681 接続を切断します。disconnectコマンドと同じです。
682
683
684 ### コマンド(C) - 終了処理(0)
685
686 コマンドが終了した時、そのウィンドウが非アクティブの場合に
687 通知のために発生させるアクションを設定します。
688
689  * なし(N) : 何もしません。
690  * フォーカス(F) : ウィンドウをフォーカス状態にします。
691    ただし、同じプロセス内のほかのウィンドウがアクティブの場合に限ります。
692    他のプロセスがアクティブの場合はフォーカスされません。
693  * 振動(S) : ウィンドウを振動させます。
694  * 点滅(B) : ウィンドウ内を点滅(緑色)させます。
695
696
697 ### コマンド(C) - 暗号鍵の入力(K)
698
699 起動中のプロセスで接続設定のパスワード暗号化に使用される秘密鍵を入力します。
700
701
702 ### コマンド(C) - 接続設定(E)
703
704 接続設定ダイアログを表示します。
705
706
707 ### データ(D) - 並び替え(S) Alt-S
708
709 検索結果をファイルに出力します。
710 検索結果が表示されている場合のみ有効です。
711
712
713 ### データ(D) - インポート(I)
714
715 検索結果のテーブルにファイルをインポートします。
716 importコマンドとは独立した処理です。検索結果が表示されている場合のみ有効です。
717
718
719 ### データ(D) - エクスポート(E) Ctrl-Shift-S
720
721 検索結果をファイルに出力します。
722 exportコマンドとは独立した処理です。検索結果が表示されている場合のみ有効です。
723
724
725 ### ヘルプ(H) - ヘルプを表示(H)
726
727 ヘルプ(このファイル)をデフォルトブラウザで表示します。
728
729 環境によっては表示できない場合があります。
730
731
732 ### ヘルプ(H) - Stew について(A)
733
734 バージョン情報ダイアログを表示します。
735
736
737
738 ## GUIモード・その他
739
740
741 ### 全体
742
743 テキスト入力欄は共通して、
744 「元に戻す」「やり直す」「切り取り」「コピー」「貼り付け」「すべて選択」の
745 ショートカットが利用できます。
746
747 これらは、コンテキストメニューからも操作できます。
748
749
750 ### 結果テーブル
751
752 検索コマンドを実行したときに、結果を表示します。
753 最左列は行番号が表示されます。列幅自動調整が設定されていれば、列幅が自動的に調整されます。
754
755 セルを編集すると、テーブルに反映(UPDATE)されます。
756 行番号が"+"になっている行は「非リンク行」です。
757 非リンク行については、コンテキストメニューを参照。
758
759
760 ### 入出力欄
761
762 コマンドの入力とメッセージの出力が同居する、コマンドラインのようなインターフェイスです。
763
764 エンターキーを押すと、プロンプトから末尾までがコマンドとして解釈され実行されます。
765 カーソルが末尾にない場合は、カーソルが末尾に移動します。
766 プロンプトより前の部分は編集不可となっています。
767
768 デスクトップからファイルをドロップすると、
769 「パスの貼り付け」「内容の貼り付け」のいずれかが実行できます。
770
771
772 ### ドラッグ&ドロップで入力欄にパスを貼り付ける機能  \<バージョン4.2の追加機能\>
773
774 ファイルマネージャーなどから入出力欄にファイルをドラッグアンドドロップすると、
775 入出力欄にファイルのパスを貼り付けることができます。
776
777 複数のファイルのパスを一度に貼り付けることができます。
778
779
780 ### ステータスバー
781
782 直前のコマンドとその実行時間が表示されます。
783 実行時間は、timeコマンドとは異なり、コマンドの開始から終了までの所要時間となります。
784
785
786 ### コンテキストメニュー
787
788 マウスの右クリックにより、そのコントロールに即した機能のメニューが表示されます。
789 表示されるメニュー内容は、入力部分ごとに異なります。
790
791 メニューは以下のとおりです。
792
793 この列を並べ替え
794 :   右クリックした列(選択されている列では無く)をソートします。
795     同じ列を続けてソートすると、逆順でソートします。
796
797 コピー
798 :   選択しているセルを、タブ区切りテキスト形式でクリップボードに送ります。
799     タブ文字や改行文字をエスケープしません。
800
801 エスケープ付でコピー
802 :   選択しているセルを、エスケープ付のタブ区切りテキスト形式でクリップボードに送ります。
803     値に改行文字が含まれている場合でも、直接スプレッドシートなどに貼り付けることができます。
804
805 貼り付け
806 :   選択したセルに、クリップボードのデータを貼り付けます(UPDATE)。
807     選択範囲外のデータは無視されます。
808     データより選択範囲が大きい場合でも、貼り付けは繰返されません。
809
810 すべて選択
811 :   すべてのセルを選択状態にします。
812
813 セルの値をクリア
814 :   データ型にかかわらず、選択したセルにNullを設定します(UPDATE)。
815
816 現在時刻の貼り付け
817 :   選択したセルに現在時刻を設定します(UPDATE)。
818
819 列名をコピー
820 :   現在表示しているヘッダの値を、タブ区切りテキスト形式でクリップボードに送ります。
821
822 列名を検索
823 :   現在表示しているヘッダの文字列から列名を検索します。
824
825 新しい行を追加
826 :   表の最後に新しい行を追加します。
827     この時点では、データベースへの反映は行われません(非リンク行)。
828     値を入力した後で「行をデータベースへリンク」を実行すると、データベースへ反映されます。
829
830 クリップボードのデータを追加
831 :   クリップボードのタブ区切りテキストを、データベースに連続して追加します(INSERT)。
832     エラーの場合は、非リンク行となります。
833     中断は強制終了以外できませんので、データ量が多い場合はimportコマンドを推奨します。
834
835 行を複製
836 :   表の最後に選択した行のコピーを追加します。
837     この時点では、データベースへの反映は行われません(非リンク行)。
838     値を入力した後で「行をデータベースへリンク」を実行すると、データベースへ反映されます。
839
840 行をデータベースへリンク
841 :   非リンク行をデータベースへ反映します(INSERT)。
842
843 行を削除
844 :   選択行を削除するのと同時にデータベース上のテーブルから削除します(DELETE)。
845     (非リンク行の場合はDELETEは実行されません。)
846     複数行を選択していても実行できます。
847
848 ※COMMIT,ROLLBACKは手動です。
849
850
851 ### データベース情報ツリー
852
853 データベースのテーブルなどの情報をツリー表示します。
854
855 簡易SQL文自動生成機能が利用できます。
856
857
858 コピー
859 :   ノードの文字列表現をコピーします。
860
861 単純名をコピー
862 :   ノードを表す単純な名称をコピーします。
863
864 完全名をコピー
865 :   カタログ名、スキーマ名を完全修飾した名称をコピーします。
866
867 最新状態に更新
868 :   選択したノードの情報を再読み込みして最新状態に更新します。
869
870 WHERE句条件部を生成
871 :   選択した列の情報からWHERE句より後の部分を生成します。
872
873 SELECT句を生成(WHERE付)
874 :   選択したテーブルと列の情報からSELECT文を生成します。
875     末尾にWHEREキーワードが付きます。
876
877 UPDATE文を生成(WHERE付)
878 :   選択したテーブルと列の情報からUPDATE文を生成します。
879     末尾にWHEREキーワードが付きます。
880     テーブルは1つだけ選択できます。
881
882 INSERT文を生成
883 :   選択したテーブルと列の情報からINSERT文を生成します。
884     テーブルは1つだけ選択できます。
885
886 この列名の列にジャンプ
887 :   結果セットに同じ列名がある場合はその列にジャンプします。
888     ダブルクリックでも同じ効果があります。
889
890 列番号を表示/非表示
891 :   列ノードの番号表示/非表示を切り替えます。
892
893
894 接続したときに自動で指定したノードを展開する機能があります(実験的機能)。
895
896 システムディレクトリに"autoexpansion.tsv"という名前でファイルを作成します。
897 内容は、展開したいノードのリストを1行毎にTSV形式で記載します。
898 実際にツリーに表示されるノード文字列をTABでつないだものになります。
899
900     # 例: コネクタ"H2 DB1"(IDでなく接続名)のCATALOG1.PUBLIC.TABLE1を展開する
901     H2 DB1(TAB)CATALOG1(TAB)PUBLIC(TAB)TABLE(TAB)TABLE1
902
903
904 ### 設定保存
905
906 以下の設定が、ウィンドウを閉じたとき(終了したときではない)に保存され、
907 次回以降のウィンドウの設定として使用されます。
908
909  * ウィンドウ位置
910  * ウィンドウサイズ
911  * 分割バー位置
912  * ステータスバー(表示/非表示)
913  * 列番号(表示/非表示)
914  * 情報ツリーペイン(表示/非表示)
915  * 常に手前に表示(する/しない)
916  * 列幅自動調整モード
917
918
919 ### メニューのキー割り当て
920
921 システムディレクトリに"keybind.conf"という名前のファイルを作成し、
922 内容には"メニューのアクション名=KeyStrokeの文字列表現"を設定すると、
923 メニューのキー割り当てが変更できます。
924
925 メニュー以外(コンテキストメニューなど)には適用できません。
926
927     # 例
928     # アクション名はsrc/net/argius/stew/ui/window/messages.u8pのMenu.#を参照
929     lastHistory = ctrl K
930
931
932
933 ## プロパティ
934
935 起動時に値を決定できるパラメータです。
936
937 Javaのシステムプロパティ(Javaの-Dオプション)で指定するか、stew.propertiesファイルに記述します。
938 "設定値"は、設定する値についての説明です。設定値のカッコ内の値は既定値です。
939 カッコがないものは既定値がありません。
940
941
942 ### net.argius.stew.properties - プロパティファイルの場所
943
944 設定値:ファイルまたはディレクトリのパス
945
946 stew.propertiesファイルを優先的に検索する場所を指定します。
947
948 指定されたパスがファイルの場合は、そのファイルをstew.propertiesの代わりに
949 プロパティファイルとして読み込みます。
950
951 指定されたパスがディレクトリの場合は、そこにstew.propertiesがあるものとみなされます。
952
953 指定されない場合は、クラスパス、システムディレクトリの順に検索されます。
954 無い場合はプロパティファイルが無いものとみなされます。
955
956
957 ### net.argius.stew.directory - 作業ディレクトリ
958
959 設定値:ディレクトリパス(カレントディレクトリ)
960
961 コマンドで使用するディレクトリの開始時のパスを指定します。
962 デフォルトシステムディレクトリとは異なります。
963
964
965 ### net.argius.stew.query.timeout - クエリのタイムアウト値
966
967 設定値:整数秒(0)
968
969 コマンド内のクエリが発行時に設定するタイムアウト値を指定します。
970 0以下はタイムアウト未指定とみなされます。
971
972 (実装詳細:java.sql.Statement#setQueryTimeoutに設定する値。)
973
974
975 ### net.argius.stew.rowcount.limit - 出力件数の上限
976
977 設定値:上限値(Max=Integer.MAX_VALUE≒2,147,000,000)
978
979 検索結果を出力する上限件数を設定します。exportなどには適用されません。
980
981
982 ### net.argius.stew.command.Import.batch.limit - Importのバッチ数の上限値
983
984 設定値:上限値(10000)
985
986 Importコマンドで一度に実行する件数の上限値を決定します。
987
988
989 ### net.argius.stew.ui.window.resident - Windowの常駐
990
991 設定値:整数分
992
993 **実験的な機能です。**
994
995 指定した分ごとに画面の再描画を行い、アプリケーションがスワップアウトしないようにします。
996
997
998 ### Loggerの設定
999
1000 Stew4は標準のLoggingAPIを(ラップして)使用しています。
1001
1002 ログ出力を有効にする場合は、システムプロパティ"java.util.logging.config.file"を設定します。
1003
1004 以下は起動オプションの例。
1005
1006     -Djava.util.logging.config.file=logging.properties
1007
1008
1009 ----------------------------------------------------------------------------------------------------