ここでは、画面を元に、具体的な使用方法を説明します。

3 - 1 起動

[スタート]メニューよりSI Object Browser を実行します。

SI Object Browserを実行すると、ウィンドウの中央にログオンダイアログが表示されますので、
ユーザーID、パスワード、サーバー、データベース名を指定し、データベースに接続します。

[WINDOWS認証]:「WINDOWS認証」にチェックをつけ、サーバー、データベース名を指定し、データベースに接続します。

データベース名を指定しない場合は、ユーザー規定のデータベースにログインします。


[オブジェクトリスト]ウィンドウが表示されたら、接続完了です。

[接続先リストに登録する]をチェックして接続すると、ウィンドウ上段の[接続先リスト]に登録され、
次回からはこのリストをダブルクリックするだけでデータベースへの接続が可能となります。

接続先リストを削除するには、削除したい接続内容を選択して[Delete]キー、
または「×」ボタンを押して下さい。

▲ ▼にて接続先リストの並び替えも可能です。

[コメント]
接続先についてのコメントを登録する事ができます。

[接続先リストの取込]ボタンを押下すると、同じクライアントマシンにインストールされている
旧バージョンの接続情報を取り込むことができます。
■接続先リスト取込
ログオン画面左上の「接続先リストの取込」ボタンを押下すると
各バージョンのSI Object Browser に登録されている接続先リストが表示されますので
必要なものを選択し、「取込」ボタンを押下します。

3 - 2 ツールバー

画面上部には、よく使用する機能がツールボタンとして表示されています。
これらのツールバーは、機能毎に表示・非表示の指定ができます。


<標準メニュー>
[データベース接続] データベースへの接続を行います。
[データベース切断] データベースへの切断を行います。
[現行データベース] 現在接続中のDBの中から使用したいDBを選択します。
[COMMIT] データベースへの変更操作を確定します。
[ROLLBACK] データベースへの変更操作を取り消します。
[最近開いた
  オブジェクト]
 (ファイルメニューのみ)
SI Object Browserで開いたオブジェクトを保持します。
ここに保持される情報は、データベース接続情報ごとに最大10件です。

<編集メニュー>
[元に戻す] テキストの編集等を取り消します。
[切り取り] 選択中のテキストなどをクリップボードに切り取ります。
[コピー] 選択中のテキストなどをクリップボードに収容します。
[貼り付け] クリップボード内のデータを指定した位置に貼り付けます。

<表示メニュー>
[SQL実行] SQL文を実行するためのウィンドウを表示します。
→ 3−5参照
[スクリプト実行] テキストファイルに格納されたSQLスクリプトを実行します。
→ 3−6参照
[表・列] テーブルと、その列を一覧表示します。
→ 3−7参照

<管理メニュー>
[ユーザー情報] ユーザー・ロール・プロファイル情報画面を表示します。
→ 5−1参照
[プロセス情報] 現在DBに接続中のプロセス情報画面を表示します。
→ 5−3参照
[ロック情報] 現在のロック情報を確認できます。
→ 5−4参照
[ファイルグループ情報] ファイルグループ・ファイル情報画面を表示します。
→ 5−2参照
[データベース情報] 現在接続中のデータベース情報を確認できます。
→ 5−6参照
[ジョブ情報] ジョブ情報を確認できます。
→ 5−5参照

<ツールメニュー>
[オブジェクト比較] 異なるスキーマの所有するオブジェクトを比較します。
→ 3−15参照
[テーブルアクセス表] SQLに対して使用/未使用の未使用のインデックスの検出や、
推奨インデックスの作成が行えます。
→ 3−17参照
[SQLキャッチ] SQL Serverに対して発行されている生SQLをキャッチします。
→ 3−9参照
[テーブルアクセス表] トレース情報からSQL文を抽出しテーブル単位にまとめて表示します。
→ 3−10参照
[SQL Server
  Management Studio]
SQL Server付属の、SQL Server Management Studioを起動します。 「自動ログイン」にチェックをつけると、起動と同時にSI Object Browserへの接続情報を使用してSQL Serverに接続します。
オプション画面の詳細設定タブにある、「Management Studio」に実行ファイルパスが指定されていない場合、この機能を使用することはできません。
[SSIS(DTS)] SQL Server付属の、エクスポート/インポートウィザードを起動します。
オプション画面の詳細設定タブにある、「SSIS(DTS)」に実行ファイルパスが指定されていない場合、この機能を使用することはできません。
[SQL Server Profiler] SQL Server付属の、SQL Server Profilerを起動します。
「自動ログイン」にチェックをつけると、起動と同時にSI Object Browserへの接続情報を使用してトレースを開始します。
オプション画面の詳細設定タブにある、「SQL Profiler」に実行ファイルパスが指定されていない場合、この機能を使用することはできません。
※Azure SQL Databaseに接続している場合、オプションの設定にかかわらずこの機能を使用することはできません。

<新規作成メニュー>
[表][制約] 各オブジェクトを新規に作成します。
(→ 第四章参照)

3 - 3 オブジェクトリスト

データベースに接続すると、そのユーザーが利用可能なデータベースオブジェクトが
[オブジェクトリスト]ウィンドウに表示されます。

ウィンドウ左側には、ユーザーとオブジェクトタイプがツリー表示され、
ここで選択したユーザー、オブジェクトタイプに該当するオブジェクトの一覧が
ウィンドウ右側に表示されます。



一覧表示では、ウィンドウ上段の見出タブをクリックすると表示順序を変更することができます。
また、予想したよりもオブジェクトの数が多い場合は、表示中に[ESC]キーを押すことで、
処理を中断することができます。

ウィンドウ上段に並ぶツールボタンは、それぞれ次のような機能があります。

[データベース → オブジェクト順]
 ツリー表示をサーバ、データベース、オブジェクトタイプの順に表示します。
[オブジェクト → データベース順]
 ツリー表示をサーバ、オブジェクトタイプ、データベースの順に表示します。
[サーバ選択時にオブジェクト一覧を表示する]
 ツリー表示で第一階層(データベース)のアイコンをクリックした際に、
 そのデータベースに格納されている全てのオブジェクトを一覧表示します。
[データベース選択時に従属オブジェクトを表示する]
 ツリー表示で第二階層(ユーザーまたはオブジェクトタイプ)のアイコンをクリックした際に、
 そのデータベースに格納されている全てのオブジェクトを一覧表示します。
[表示] (リストボックス)
 ツリー表示するユーザを限定したい場合に使用します。
 「すべてのDB」、「ログインDB」、「設定(各データベースごとに表示/非表示を選択)」から
 選択可能です。
 そのデータベースに格納されている全てのオブジェクトを一覧表示します。
[オブジェクト名検索]
 操作したいオブジェクトの名称が分かっている場合は、
 このアイコンの横にあるテキストボックスに名称を入力してこのアイコンをクリックすると、
 オブジェクト名にその値が含まれているオブジェクトのみをリスト表示します。
[全文検索(GREP)]
 オブジェクトを作成するDDL文(CREATE文)中に指定した文字列が含まれたオブジェクトのみを
 リスト表示します。
 アイコンをクリックすると下記の指示ダイアログが表示されます。

■検索文字列
 ここで指定した文字列がDML文中に含まれたオブジェクトをリスト表示します。
■対象オブジェクト
 検索対象の範囲を指定します。
■大文字小文字を区別する
 アルファベットの大文字・小文字を区別して検索するか否かを指定します。

この他にもメニューにある[オプション]を開くと表示方法を変更する事ができます。
(→ 3−12参照)

インデックスを選択し、ボタンをONにすると断片化割合を表示することができます。


■断片化割合のグラフの見方
 オプションの詳細設定タブにある「INDEXの断片化解消閾値の設定」の閾値によって変化する。
  赤色・・・再構築時の閾値以上の断片化率となっているINDEXを指す。
  黄色・・・再編成時の閾値以上、再構築時の閾値未満の断片化率となっているINDEXを指す。
  青色・・・再編成時の閾値未満の断片化率となっているINDEXを指す。
 
[インデックスの断片化割合を表示]
 インデックス一覧を表示しているとき、インデックスの断片化割合を表示します。
 インデックス以外のオブジェクトやサーバー、データベースのオブジェクト一覧を表示している場合、
 このボタンを使用することはできません。
 ※インデックスの数やサイズが多い場合、解析に数分程度かかる場合があります。
 ※Azure SQL Databaseに接続している場合、この機能を使用することはできません。

3 - 4 データベースオブジェクトの操作

データベースオブジェクトに対する操作は、基本的に[オブジェクトリスト]から
目的のオブジェクトを選択し、[オブジェクトリスト]メニュー、もしくは
右クリックによるポップアップメニューから目的の操作を選択します。



選択可能な操作は次の通りです。
[新規作成][貼り付け]以外の操作は、事前にオブジェクトを選択しておく必要があります。

[新規作成] オブジェクトを新しく作成します。
オブジェクト別の詳細については第四章を参照して下さい。
[コピー] オブジェクトをコピーします。コピー後は
貼り付け操作によりコピーを作成することが可能です。
[貼り付け] 現在選択しているユーザの下にオブジェクト のコピーを作成します。
(あらかじめ[コピー]でオブジェクトをコピーしている必要があります。)

まず、名前を入力するダイアログが表示されますので
新しく作成するオブジェクトの名前を指定します。
テーブルの場合は「テーブルデータをコピーする」というチェックが
ありますので、テーブルレコードも同時にコピーしたい場合に
チェックをONにします。
最後にOKボタンを押すとCREATE文が実行され、
コピーが作成されます。
[削除] オブジェクトを削除します。
[定義情報を開く] オブジェクトの詳細情報ウィンドウを開きます。
オブジェクト別の詳細については第四章を参照して下さい。
[データを開く] オブジェクトの詳細情報ウィンドウのデータタブを開きます。
[データを開く
  (件数指定)]
オブジェクトの詳細情報ウィンドウのデータタブを、指定した件数で開きます。
[ソースを開く] オブジェクトの詳細情報ウィンドウのソースタブを開きます。
[インデックスの
  断片化解消]
インデックスの断片化を解消するコマンドを実行します。
断片化の割合が5%未満のインデックスに対する再編成/再構築操作は
断片化割合が変化しない場合があり、推奨されません。


【 再編成 】
 選択したインデックスの再編成を行います。
 ※Azure SQL Databaseでは
 この機能を使用することができません。


【 再構築 】
 選択したインデックスの再構築を行います。
 表示されるダイアログで「ONLINEで実行」チェックをONにすると、
 極力共有ロックを保持しないオンラインモードでの再構築を行います。

【自動判定】
 オプション画面の詳細設定タブで設定した閾値を元に、
 再編成/再構築/何もしない を自動チェックして実行します。
 ※およびAzure SQL Databaseではこの機能を使用することが
 できません。 また、「インデックスの断片化割合を表示」ボタンが
 OFFのとき、この機能を使用することはできません。
[スクリプト出力] オブジェクトのSQLスクリプトをファイルに出力します。
→ 3−4−2参照
[レポート出力] オブジェクト定義情報をEXCELファイルに出力します。
→ 3−4−3参照
[印刷] オブジェクトのSQLスクリプトを印刷します。
[BCP] SQL Serverデータベース中のデータをファイルにエクスポート、
またはインポートを行います。
内部ではSQLServer付属のBCPツール(bcp.exe)を使用します。
→ 5−9参照
[表・列] テーブルと、その列を一覧表示します。
→ 3−7参照
[権限] オブジェクト権限情報を表示します。
→ 3−4−6参照
[クロスリファレンス] オブジェクトの参照情報を表示します。
→ 3−4−4参照
[マトリックス表] オブジェクトの相関図を表示します。
→ 3−4−5参照
[統計情報] オブジェクトの統計情報(ANALYZE情報)を取得、削除します。
→ 3−4−7参照
[コメントチェック] プログラムを選択したときのみ有効です。
選択したプログラムのコメントを一覧表示します。
→ 3−4−8参照
[ユーザー定義コマンド] ユーザー定義コマンドを実行します。
[実行] ストアドプログラム実行ウィンドウを表示し、実行します。
→ 3−4−1参照
[制約を有効にする] 制約を有効にします。(制約選択時のみ)
[制約を無効にする] 制約を無効にします。(制約選択時のみ)
[シノニム作成] シノニムの作成画面を表示します。
→ 4−7参照
[全文検索(GREP)] DDL文の全文検索を行います。
→ 3−3参照
[ワークスペース] オブジェクトをショートカットの一覧表示欄に追加します。

3 - 4 - 1 ストアドプログラムを実行する

ストアドプロシージャ、ストアドファンクションについては、
メニューより[実行]を行った場合、引数設定ウィンドウが表示され
プログラムを実行する事ができます。



プログラムに引数や戻り値がある場合は、ウィンドウに
引数名と型が表示されますので、実行時に渡す値を[値]欄に入力します。

[実行]ボタンをクリックすると、プログラムを実行する事ができます。
正常に実行された場合は、画面に「プログラムを実行しました。」のメッセージを表示し、
ウィンドウ下段に引数の値と戻り値の情報を表示します。

3 - 4 - 2 SQLスクリプトを出力する

メニューより[スクリプト出力]を行った場合、出力先のディレクトリ(一括出力の場合はファイル名)を
指定するウィンドウが表示され、指定したディレクトリにSQLスクリプトを出力できます。
ウィンドウ下段の[出力オプション]を変更すると、スクリプトの出力方法をカスタマイズする事が
できます。


■ 同時に出力するスクリプトを一つにまとめる
 一度に選択したオブジェクトを一つのファイルにまとめる場合にチェックします。
 チェックしない場合は、"オブジェクト名.SQL"というファイル名で出力されます。

■ タイプに応じたサブディレクトリを作成する
 指定したディレクトリに、ユーザー名、オブジェクトタイプ名でのサブディレクトリを作成し、
 その中にスクリプトを出力します。
 全オブジェクトをまとめて出力する際に便利です。

■ 名前TBL
 通常はスクリプト名はデータベースオブジェクト名と同じものが使われますが、
 オブジェクト名とスクリプトファイル名の対応データの入ったテーブルをここで指定する事で、
 任意のファイル名を個々のオブジェクトに対して割り当てる事が出来ます。


テーブル名を指定し[設定]ボタンを押すと、上のような編集画面が表示されます。

データの編集方法はテーブルオブジェクトと同様です。
→ 4−1[データタブ]参照

[登録]
 指定したテーブルを名前テーブルとして登録します。
 存在しないテーブル名を指定した場合は、その名前でテーブルを新規作成し、登録します。

[初期データを登録する]
 登録した名前テーブルに、現時点で存在するデータベースオブジェクトのデータを登録します。

■ データベース名の出力
 SQL文中にデータベース名を不可するか否かを指定します。
 ※Azure SQL Databaseに接続している場合、指定することができません。

■ スキーマ名の出力
 SQL文中にスキーマ名を不可するか否かを指定します。

■ テーブルスクリプトに従属インデックスも追加する
 従属するインデックスも同じファイルに出力する事ができます。

■ テーブルスクリプト出力時、データも出力(INSERT文)
 テーブルの定義と一緒に格納されているデータを INSERT文として出力します。
 データごと他の環境にテーブルを移す場合や、簡易バックアップとしても使えます。
 INSERT文の出力先には次の中から選択可能です。
  ・テーブルスクリプト自身に付加
  ・別フォルダに出力(DATAというフォルダ名に同一のファイル名で作成)
  ・別ファイルに出力(_DATA.SQLというファイル名で作成)

■ ファイルグループの出力
 格納先のファイルグループを出力します。
 ※Azure SQL Databaseに接続している場合、指定することができません。

■ ビューのスクリプト出力時、項目名を出力する
 ビューをスクリプト出力する際、列名を含めて出力します。

■ オブジェクト権限を出力する
 各スクリプトの最後に、オブジェクト権限付与のGRANT文を出力します。
 GRANT文の出力先には次の中から選択可能です。
  ・オブジェクトのスクリプト自身に付加
  ・別フォルダに出力(GRANTというフォルダ名に同一のファイル名で作成)
  ・別ファイルに出力(_GRANT.SQLというファイル名で作成)

■ DROP文を出力する
 対象オブジェクトのDROP文を出力します。オブジェクトの再作成に利用できます。

■ 空白行を出力しない
 出力したスクリプトから空白行を取り除きます。

■ テーブルスクリプト出力時、動的データマスク設定情報を出力する
 動的データマスクの対象項目に対して設定情報を出力します。(MASKED WITH 句を追加します。)

3 - 4 - 3 定義情報をEXCEL出力する

メニューより[レポート出力]を選択した場合、
[オブジェクト一覧表][テーブル定義書][ビュー定義書]
及びユーザーがカスタマイズした定義書をEXCELファイルとして出力する事ができます。

出力するレポートは、「レポート定義の登録」で登録されたものが選択可能です。

[オブジェクト一覧表]
 選択したオブジェクトをタイプ別に一覧形式にまとめたものを作成します。

[オブジェクト定義書]
 選択した TABLEオブジェクトの項目説明を作成します。

[ビュー定義書]
 選択したVIEWオブジェクトの項目説明を作成します。

3 - 4 - 4 クロスリファレンス

メニューより[クロスリファレンス]を行った場合、指定したオブジェクトと
他のオブジェクトとの関連情報が表示されます。

画面左側には、指定したオブジェクトが呼び出しているオブジェクトが一覧表示され、
画面右側には、指定したオブジェクトが呼ばれているオブジェクトが表示されます。

また、「別DBのオブジェクトを対象にする」ボタン押下により、
同インスタンスに紐付くデータベース間での依存関係を参照できるよう、対象データベースを選択します。


それぞれのオブジェクトを選択し[開く]ボタンを押下、またはダブルクリックすると、
定義情報ウィンドウが表示されます。
画面右側には、指定したオブジェクトが呼ばれているオブジェクトが表示されます。

【 参照 】【 被参照 】の横にあるツールボタンは、それぞれのオブジェクトを
クロスリファレンス図に表示するか否かを指定します。

3 - 4 - 5 マトリックス表

メニューより[マトリックス表]を行った場合、指定したオブジェクトの相関図を表示します。



[OBJECT\被参照]タブ
 縦方向にオブジェクトリストで選択したオブジェクト、
 横方向にはそれらを呼び出しているオブジェクトを表示します。

[OBJECT\参照]タブ
 横方向にオブジェクトリストで選択したオブジェクト、
 縦方向にはそれらが呼び出しているオブジェクトを表示します。

[項目\表]タブ
 横方向にオブジェクトリストで選択したオブジェクト(テーブル、ビュー)、縦方向には項目一覧を表示し、
 通常項目には「○」、主キー項目には「◎」を表示します。
 主に同一項目名で属性が一致しているかどうかを確認する為に使用します。

また、画面上段に表示されているツールボタンは、それぞれ次の機能があります。

[EXCEL出力]
 表示されているマトリックス表を、EXCELファイルに出力します。

[クリップボード出力]
 表示されているマトリックス表を、クリップボードにコピーします。

3 - 4 - 6 権限付与

メニューより[権限]を行った場合、指定したオブジェクトの権限情報を表示します。
複数オブジェクトを選択した場合は、まとめて表示・変更ができます。



画面上段は権限の変更部、画面下段は、指定したオブジェクトに今現在付与されている権限が表示されます。

権限を変更するには、まず、権限を付与したいユーザーまたはロールをユーザー一覧から選択します。
その後、右側の権限一覧のチェックボックスをON,OFFし、[実行]ボタンを押します。

許可 操作の実行を許可します。
許可の付与 操作の実行を許可します。
また、他のユーザー・ロールに対して実行権限を付与することができるようになります。
拒否 操作の実行を拒否します。

3 - 4 - 7 統計情報

メニューより[統計情報]を行った場合、指定したオブジェクトの統計情報設定画面を表示します。
この画面より、統計情報の取得、削除等を行う事ができます。



■正確な統計を収集する
 指定したテーブル、インデックス、クラスタ中の全データを対象に統計情報を収集します。

■推定の統計を収集する
 指定したテーブル、インデックス、クラスタ中の一部のデータを対象に統計情報を収集します。
 対象データ数はレコード数、または全体の比率で指定します。

■統計情報を削除する
 収集した統計情報を削除します。

3 - 4 - 8 コメントチェック

メニューより[コメントチェック]を選択した場合、選択したプログラムのコメント行を一覧表示します。
不要なコメントの消し忘れなどを簡単にすることができます。
各行をダブルクリックまたは右クリック→ソース表示ボタンを選択することで、
該当の行に行ジャンプを行うことも可能です。


3 - 5 SQL実行

[表示]メニューの[SQL実行]をクリックするか、ツールバーの[SQL]ボタンをクリックすると
SQL実行ウィンドウが表示されます。SQLを入力し、実行することが可能です。
複数のSQLを同時に実行する場合は各SQLを'GO'行で区切り、実行してください。

■ 結果表示モード


■ 基本機能
ウィンドウ上段に並ぶツールボタンは、それぞれ次のような機能があります。
[実行] [結果]タブが表示されている場合は、入力したSQL文を実行します。
[実行計画]タブが表示されている場合は、入力したSQL文の実行計画を
表示します。
[前] 過去に入力したSQL文で、現在表示されているSQL文よりも
古い履歴を呼び出します。
[次] 過去に入力したSQL文で、現在表示されているSQL文よりも
新しい履歴を呼び出します。
[履歴] 過去に入力したSQL文の履歴表示を行います。
同時にSQL文の選択が可能です。
[終了] ウインドウを閉じます。
[SQL文を読み込む] 指定したファイル中にあるSQL文を画面に表示します。
(エクスプローラから任意のファイルをドラッグ&ドロップしても
同様の結果になります。)
[SQL文を保存する] 現在入力中のSQL文をファイルに保存します。
[SQLビルダ] GUIによりSQLを作成します。
[実行計画] このボタンが押されている状態で[実行]ボタンを押した場合は、
SQLの実行計画が表示されます。

実行計画表示の場合、画面中段にはSQL文実行時に発生するI/O情報が、
画面下段にはSQL文の実行計画が階層表示されます。
また、コストベースの場合は実行コストも表示されます。

この結果を元に、予想したインデックスが使用されているか、
テーブルの連結順序が適当か、ソートは効率よく行われているか等を
判断する事ができます。

ウィンドウ左側にあるツールボタンはそれぞれ次の機能があります。
デフォルトではどちらもON の状態になっています。
[結果を閉じる] SQL実行結果部分の表示の切り替えを行います。
実行結果部分が非表示の時は実行結果部分を表示し、
実行結果部分が表示されている時は実行結果部分を非表示にします。
[データベース] SQL文を実行するデータベースをリストより選択します。


■ [結果] タブ
 ウィンドウ上段に入力したSQL文を実行します。
 SELECT文の場合はウィンドウ下段に結果データが表示されます。
 また[結果を編集可能にする]がチェック状態の場合はデータを変更する事で、
 直接テーブル中のデータを変更する事ができます。
 (行を特定できないSELECT文の場合は編集状態になりません)
 
 修正したデータは行移動時に自動的にUPDATEされます。
 行移動時のCOMMIT可否はオプションで設定できます。
 
 その他のDML文については、実行時に対象となったレコード行数を表示します。
 
 画面上段に入力するSQL文は'GO'で区切る事で複数文入力する事が出来ます。
 ただしSELECT文を複数指定した場合は最後のSELECT文のみを結果表示します。

ウインドウ左側に並ぶツールボタンは、それぞれ次のような機能があります。

[結果を編集可能にする] 表示されたデータが編集可能か否かを指定します。
編集が必要ない場合はこのボタンをOFF にすると反応が良くなります。
オプション設定により初期状態の設定も可能です。
[出力方向変更] データを横方向または縦方向に表示します。
[結果をEXCELファイル
  に出力する]
表示されているデータの全てをEXCELファイルに出力します。
オプション設定により出力方法の変更が可能です。
[結果のINSERT文を
  出力する]
表示されているデータの全てをINSERT文として、ファイルに出力します。
複数のテーブルを結合している場合はテーブル名を指定するダイアログが表示されます。
※SELECT句で別名を指定している場合、INSERT文中の列名が別名にて出力されます。
[結果をクリップボード
  に出力する]
表示されているデータの全てをクリップボードに出力します。
オプション設定により出力方法の変更が可能です。
[結果をCSVファイル
  に出力する]
表示されているデータの全てをCSVファイルに出力します。
オプション設定により出力方法の変更が可能です。
[レコードの挿入] データを挿入する為の空白行を作成します。
[レコードの削除] 現在位置のレコードを削除します。

■ 実行計画モード


■[実行計画]タブ
 ウインドウ上段に入力したSQL文の実行計画を表示します。
 ウインドウ下段に結果データが表示されます。
 ウインドウ左側に並ぶツールボタンは、それぞれ次のような機能があります。

[結果をEXCELファイルに出力する] 表示されている実行計画をEXCELファイルに出力します。
[結果をクリップボードに出力する] 表示されている実行計画をクリップボードに出力します。
オプション設定により出力方法の変更が可能です。

■ エディタ機能(上部アイコンボタン)
エディタ部分に並ぶツールボタンは、それぞれ次のような機能があります。
[SQL文を保存する] 現在入力中のSQL文をファイルに保存します。
[元に戻す] エディタ上での操作を元に戻します。
[やり直し] エディタ上での操作をやり直します。
[検索] 文字列検索用のダイアログを開きます。
[次を検索] 「検索」で指定した条件で、カーソル位置より後を検索します。
[前を検索] 「検索」で指定した条件で、カーソル位置より前を検索します。
[置換] 文字列置換用のダイアログを開きます。
文字列の置換を行います。
[検索クリア] 「検索」で指定した条件をクリアします。
[行ジャンプ] エディタ上の指定した行へ移動します。
[大文字に変換] 範囲選択された文字列を大文字に変換します。
[小文字に変換] 範囲選択された文字列を小文字に変換します。
[全角に変換] 範囲選択された文字列を全角に変換します。
[半角に変換] 範囲選択された文字列を半角に変換します。
[インデント] 範囲選択された行をインデントします。
[逆インデント] 範囲選択された行のインデントを戻します。
[コメント挿入/削除] 範囲選択された行にコメントの挿入/削除を行います。
[SQL整形] 範囲選択された部分を整形します。
[マクロ記録開始]
[マクロ記録終了]
エディタ上でのユーザの操作をマクロとして記録します。
マクロ記録中の場合は記録を終了します。
[キーマクロ実行] 記録したマクロを実行します。
[キーマクロの保存] 記録したマクロを保存します。
[キーマクロを開く] 保存したマクロを開きます。
[定義情報ジャンプ] 範囲選択されたオブジェクトの定義情報画面を開きます。
[表・列] 範囲選択されたオブジェクトで表・列画面を開きます。
[SQLテンプレート] 範囲選択された単語でSQLテンプレートを開きます。
[エディタオプション] エディタオプション画面を開きます。

■ エディタ機能(ツールパレット - オブジェクトリスト)


ドラッグアンドドロップでオブジェクト名をエディタ部分に記述するオブジェクトツリーです。
選択(Ctrlキー選択、Shiftキー選択)を行い、記述したい部分にドラッグアンドドロップが出来ます。
Enterキー押下した場合はエディタ上のキャレット位置にテキストが記述されます。
右クリックメニューからオブジェクトの定義情報も開けます。


■ エディタ機能(ツールパレット - 逆引き検索)


子オブジェクト名から親オブジェクトを検索できる機能です。
列名からテーブル名やビュー名をリストアップいたします。
また、ドラッグアンドドロップ・EnterキーでSQLに記入することが出来ます。

画像では「EMP_CODE」列が6個のテーブルで使用されていることが分かります。
更に調べる場合は右クリックメニューでそのテーブルの定義情報を開くこともできます。


■ エディタ機能(ツールパレット - SQLのプログラムソース化)


SQLをプログラムソースに記載できる形にする機能を実装しました。
ルールに沿って文字列記号等を付加してクリップボードに出力します。
[SQLに戻す]でプログラムソースから元のSQLへ変更することも可能です。
また、カスタムしたルールを登録することも可能です。

<画像の設定ではクリップボードに下記が出力されます>
 sb.Append("select + from dbo.ALTERNATE_PRODUCTS");


■ SQLビルダモード
画面上部の[SQLビルダ]ボタンを押下すると、
GUIによるSQL文の作成ができます。


ダイアグラム欄のボタン説明
[SQLタイプの選択] SELECT/INSERT/UPDATE/DELETE/CREATE VIEWから選択します。
[テーブルの追加] ダイアグラム欄に追加したいテーブルを選択します。
[テーブルの削除] ダイアグラム欄のフォーカスがあたっているテーブルを削除します。

追加したテーブルを結合させることもできます。
テーブルの列をクリックし、結合させたい結合対象テーブルの列に
ドラッグ&ドロップすることで結合可能です。



結合部分でダブルクリックしていただくと、結合条件の変更・結合列の変更が可能です。
ダイアグラムで結合だけさせて、下の画面より列を選択していただくこともできます。



グリッド部の説明


ダイアグラム部にて、追加されたテーブルの列名をクリックすると
グリッド部に列が追加されていきます。

ボタンを押すことで、グリッド部に直接列を追加できますし、
ボタンを押すことで列の削除ができます。

上記のダイアグラム欄、グリッド欄で操作した結果SQLがSQLエディタ部に
自動で作成され表示されます。


*SQLエディタにて作成したSQL文から、上部のグリッド部、ダイアグラム部へ
反映させる(リバース)ことも可能です。


*以下のものにつきましてはSQLビルダでの実行はできない仕様となっております。
 ・ UNION 構文はリバースの対象外とします。
  ただしサブクエリ内に限り、UNION が含まれててもリバースします。

 ・ JOIN 句はフォワード/リバースの対象外とします。( テーブルの結合は「=」のみを対応)

 ・ FOR UPDATE 句はフォワード/リバース共に対象外です。

 ・ HAVING 句の内容は、リバース時に[グリッド部]の[抽出条件]欄にセットされます。
  [抽出条件]欄の値は、[グルーピング]欄が GROUP BY または HAVING の場合に
  HAVING 句として動作します(その他の場合は WHERE 句扱いいたします )

3 - 6 スクリプト実行

[表示]メニューの[スクリプト実行]をクリックするか、ツールバーの[スクリプト]ボタンをクリックすると
スクリプト実行ウィンドウが表示されます。



このウィンドウは、SQL実行ウィンドウと違い、データベースオブジェクトの一括作成等
スクリプトを連続で実行する事を目的としたウィンドウです。

画面右上に表示されるスクリプトの一覧から、目的のスクリプトをダブルクリックするか、
選択後[<<]ボタンをクリックすると、画面左上に選択したスクリプト名が表示されます。
これが実行予定のスクリプトの一覧となり、[実行]ボタンをクリックすると、連続で実行されます。
実行結果は画面下部の結果ログに表示されます。
スクリプトの選択には、エクスプローラからのドラッグ&ドロップにも対応しています。

また、実行予定スクリプトをダブルクリックすると、関連付けられたアプリケーションが起動しますので、
スクリプトファイルにエディタ等を関連付けておけば、ここでスクリプトの内容を確認したり
編集したりできるようになります。

ウィンドウ上段のツールボタンは、それぞれ次のような機能があります。

[実行]
 選択したスクリプトを実行します。
 実行時に表示されるダイアログにより、次のオプションが指定可能です。


 ■正常終了したスクリプトをリストから削除する
  結果的にエラーが発生したスクリプトだけがリストに残るので、
  必要最小限のスクリプトを再実行する事が出来ます。

 ■エラーが発生した時点で処理を中断する
  主従関係のあるスクリプト等、最初のスクリプトがエラーの場合は以降のスクリプトが
  確実にエラーになる場合にチェックしておくと、無駄な実行を行いません。


[終了]
 ウインドウを閉じます。

[上に移動]
 選択したスクリプトをリスト上部に移動します。

[下に移動]
 選択したスクリプトをリスト下部に移動します。

[削除]
 選択したスクリプトをリストから削除します。

3 - 7 表・列

[表示]メニューの[表・列]をクリックするか、ツールバーの[表・列]ボタンをクリックすると
テーブル及びその項目の一覧ウィンドウが表示されます。



ウィンドウの左側には参照可能な表、ビュー、シノニムオブジェクトが一覧表示されます。
(ウィンドウ上段のツールボタンで特定のオブジェクトタイプのみ出力する事も可能)

ウィンドウの右側には、選択したオブジェクトの項目名と属性、主キー情報が一覧表示されます。
(複数選択も可能です。)

ここで特定の項目を選択し、[コピー]ボタンで情報をコピーする事で、
SQL実行ウィンドウやプロシージャのソース編集においてテーブル名や項目名を
キーボードから入力する手間を省けます。

また、[コピー]ボタンのプルダウンメニューにより、通常のコピーとは別に
SELECT文、INSERT文、UPDATE文のコピーが出来ます。

複数のオブジェクトを選択してコピーを行った場合は別名の指定ダイアログボックスが表示され、
オブジェクトの別名を指定することができます。

3 - 8 SQLリファレンス

[表示]メニューの[SQLリファレンス]をクリックすると、SQL Server のコマンドや
関数の簡易マニュアルが表示されます。



[Ver.]SQL Serverのバージョンを指定し、リファレンス内容を切替えます。

[検索]テキストボックスに文字列を指定すると、その文字列を
説明に含んだSQLコマンドや関数だけを抽出することができます。

3 - 9 SQLキャッチ

SQLキャッチとは、データベース内でどのような SQL 文が
実行されているのかを監視する機能です。
SQLキャッチを使用する事で、実際に発行されている SQL 文の頻度や
実行コストが確認できますので、インデックスの追加やボトルネックとなっている
SQL 文の構文見直しの作業を支援する事が可能になります。
※Azure SQL Databaseに接続している場合、この機能を使用することはできません。


@[開始]ボタンを押し、データベーストレース/セッショントレースの開始を行います。
Aトレース開始後、SQL が実行される度にその内容を
 トレースファイルに書き出すようになります。
B[表示]ボタンを押すと、SI Object Browser は トレースファイルの
 内容SQL文のみを抽出し、整形結果を画面下段に表示します。
 (初回実行時はトレースログのフォルダ選択が必要になります→後述)
Cトレースを終了する場合は、[停止]ボタンを押してトレースを終了できます。

手順Bについてはトレースファイルが有効な間は何度でも実行できます。
また、トレースログ自体はトレース終了後にも残りますので、トレースを終了させた後でも
情報の表示は可能です。



画面上段のボタンを押すと、トレースが開始されます。



取得したトレースを表示する場合は[表示]ボタンを押下します。


初回実行時や、トレースログフォルダが見つからない場合、SI Object Browser は
トレースログの格納先を指定するダイアログを表示します。
トレースログの格納場所は実行環境により指定する手順が異なりますので注意して下さい。

@SQL Serverと SI Object Browser が同一マシン上で動作している場合
 この場合はSQL Server および SI Object Browserがインストールされている
マシンのフォルダを指定します。

ASQL Serverと SI Object Browser が別マシン上で動作している場合
 SI Object Browser が動作しているマシン(以下クライアント)上の任意のトレースログフォルダを指定し、
 次にSQL Serverが動作するマシン上にクライアント上で指定したトレースログフォルダと
 同じ構成となるようフォルダを構成してください。
 また、SQL Serverが動作するマシン上にトレースファイルが作成されるので、
 これをクライアントの指定フォルダにコピーしてください。
 つまり、SQL Serverが動作するマシン上とクライアント上で同フォルダ、
 ファイル構成とすることで機能を実行することが出来ます。

共有が難しいようでしたら、データのリアルタイム性は損なわれますが、トレースログフォルダに
クライアント上の適当なフォルダを指定し、必要に応じてサーバーのログを
そのフォルダにコピーする事で機能を実行することができます。

※トレースフォルダを途中で変更したい場合
 「選択」ボタンを押すか
 トップメニューから[SQLキャッチ]→[トレースフォルダ選択]でフォルダの変更ができます。

* また、「対象トレースファイル更新日時」にて指定した日付以降のタイムスタンプを持つ
トレースログファイルが結果リストの表示対象となります。
デフォルト値として現在日付の 0 時がセットされますので、
前日のログを対象としたい場合等は値を変更します。

SQLキャッチ結果画面



実行結果
 ボタンを選択またはSQL文をダブルクリックすると、選択した SQL 文の実行計画を表示します。

SQL文をコピー
 ボタンを選択し、選択した SQL 文をクリップボードにコピーします。

3 - 10 テーブルアクセス表

トレース情報からSQL文を抽出し、テーブル単位にまとめて表示します。
同一SQL構文は1つにまとめることもできます。テーブルに対してインデックスを設定する際に
どのようなSQLが発行されているかを参考にできます。
また CRUD 表生成の基礎資料としてもお使いいただけます。
※Azure SQL Databaseに接続している場合、この機能を使用することはできません。

テーブルアクセス表画面


テーブルアクセス表の実行


アクセスを確認したいテーブルを左の一覧にてチェックを入れ、開始ボタンを押下してください。

同様の操作で、セッションを停止する時は同様の操作で停止ボタンを押します。

取得したトレースを表示する場合は、「表示」ボタンを押します。
生成されたトレースログを表示するための参照先ディレクトリ(ログが生成された)選択します。


初回実行時や、トレースログフォルダが見つからない場合、SI Object Browser は
トレースログの格納先を指定するダイアログを表示します。
トレースログの格納場所は実行環境により指定する手順が異なりますので注意して下さい。

@SQL Serverと SI Object Browser が同一マシン上で動作している場合
 この場合は、SQL Server および SI Object Browser がインストールされている
 マシンのフォルダを指定します。

ASQL Serverと SI Object Browser が別マシン上で動作している場合
 SI Object Browser が動作しているマシン(以下クライアント)上の任意のトレースログフォルダを指定し、
 次にSQL Serverが動作するマシン上にクライアント上で指定したトレースログフォルダと
 同じ構成となるようフォルダを構成してください。
 また、SQL Serverが動作するマシン上にトレースファイルが作成されるので、
 これをクライアントの指定フォルダにコピーしてください。
 つまり、SQL Serverが動作するマシン上とクライアント上で同フォルダ、
 ファイル構成とすることで機能を実行することが出来ます。

共有が難しいようでしたら、データのリアルタイム性は損なわれますが、トレースログフォルダに
クライアント上の適当なフォルダを指定し、必要に応じてサーバーのログを
そのフォルダにコピーする事で機能を実行することができます。

※SQL Serverの OS が Windows では無い場合
 手順自体はケースAと同様ですが、更にに文字コード変換の手順が必要になります。
 サーバー側に生成されるトレースログが SJIS 以外の文字コードでしたら、
 SI Object Browser がログを読み込む際に SJIS コードに変換して下さい。
 ( SQL 文に2バイトコードを使用しない場合は特に問題ありません )

※トレースフォルダを途中で変更したい場合
 「選択」ボタンを押すか
 トップメニューから[SQLキャッチ]→[トレースフォルダ選択]でフォルダの変更ができます。

テーブルアクセス表結果画面


結果リスト(右欄)の各項目は次のような値となります。
テーブル名 SQL 文中で使用しているテーブル名が表示されます。
複数のテーブルを対象とする SQL の場合は、
対象テーブルの数だけ結果が細分化されます。
C SQL 文が[テーブル名]に対して INSERT 操作を行う場合 * を表示します。
R SQL 文が[テーブル名]に対して SELECT 操作を行う場合 * を表示します。
SELECT 操作がテーブルに対して全件検索となっている場合は F を表示します。
これはインデックスが使用されていない状態です。
U SQL 文が[テーブル名]に対して UPDATE 操作を行う場合 * を表示します。
D SQL 文が[テーブル名]に対して DELETE 操作を行う場合 * を表示します。
SQL SQL 文を表示します。

実行結果を選択し、ポップアップメニューを表示させることで、
その SQL 文に対する詳細情報が確認できます。

3 - 11 ユーザー定義コマンド

使用者が独自のSQL文を登録し、SI Object Browser の機能を拡張する画面です。
例えば、テーブルのデータを全部削除したい場合、この画面で

TRUNCATE TABLE &DATABASE.&OWNER.&NAME

というSQL文を登録する事で、オブジェクトリストから目的のテーブルを選び、
ポップアップメニューからSQL文を選ぶとデータを削除する事ができます。



SQL文を登録するには、まず、画面上段左側の一覧の任意の場所を選択して下さい。
その次に画面上段右側にある[名前]テキストボックスを入れて下さい。
この名前がポップアップメニュー上に表示されます。
ショートカットを使用する場合は、ショートカットのテキストボックスを選択し、
ショートカットにするキーを実際に押すことによって
テキストボックスにショートカットが表示されます。

その下にあるチェックボックスは、それぞれ次の意味があります。

■SQL実行画面を使用する
 チェックすると、実行結果が表示されるようになります。
 SELECT文などを登録する場合に使用します。

■実行時に確認画面を表示する
 チェックすると処理を開始する際に確認ダイアログが表示されます。

■エラーを無視する
 複数オブジェクトを対象とした処理の場合、エラー発生時に
 処理を中断するか否かを指定します。

最後に画面下段にSQL文を入力します。
オブジェクトリストの情報を取り込むには、擬似バインド変数を利用します。
(厳密にはバインド変数とは異なります)

利用可能擬似バインド変数一覧
&0又は&NAME オブジェクト名を返します。
&1又は&DATABASE オブジェクトのスキーマを返します。
&2又は&OWNER オブジェクトのスキーマを返します。
&3又は&TYPE オブジェクトのタイプを返します。
&4〜 オブジェクトリストの列番号に応じた値を返します。
3が一番左端の列(オブジェクト名)の値となります。

最後に[作成]ボタンをクリックし、保存します。

※ 主な使用例
 ■テーブルデータを初期化する
  TRUNCATE TABLE &DATABASE.&OWNER.&NAME

 ■バックアップテーブルを作成する
  SELECT * INTO &DATABASE.&OWNER.&NAME_BK FROM &DATABASE.&OWNER.&NAME

3 - 12 オプション設定

オプション設定で、SI Object Browserを利用者の使いやすいようにカスタマイズする事ができます。



[オブジェクトリスト]タブ

 ■ ツリー順序
  ツリーの表示順序を指定します。
  初期値は[データベース>オブジェクトタイプ順]ですが、例えばデータベース中の
  全テーブルの保守作業の場合は、[オブジェクトタイプ>データベース順]の方が使いやすいでしょう。
  (オブジェクトリストのツールボタン上にも同様の設定があります。)

 ■ 表示するオブジェクトタイプ
  通常は使用しないオブジェクトタイプがある場合、ここでチェックを外しておくと
  ツリー表示に出てこなくなり、ユーザーの一覧性があがります。

 ■接続データベースを一番最初に表示する
  接続データベースをツリーリスト上で一番最初に表示するようにします。
  データベース数が多い場合にチェックすると便利です。

 ■ オブジェクト固有の詳細情報を表示する
  オブジェクトリストの表示情報を変更します。

 ■ 一覧表示中の途中経過を表示する
  チェックを入れると、オブジェクト一覧を逐次再描画を行いながら表示していきます。
  チェックを外すと、全てのオブジェクト情報を取得するまでリストの描画は行わなくなりますが、
  その分処理速度が向上します。

 ■ オブジェクト選択時、行全体を反転する
  オブジェクトリストでオブジェクトを選択した場合、名前のみを反転させるか
  行全体を反転させるかを指定します。

 ■ オブジェクト一括削除時のエラーを無視する
  オブジェクトリストから複数オブジェクトを削除する際、エラー発生時に処理を中断するか
  エラーを無視して次のオブジェクトを削除するかを選択します。
  (削除時のダイアログボックスにも同様の設定があります)

 ■ 絞り込み検索機能を表示する
  オブジェクトリストの上段に[絞込検索]の項目を表示するか否かを指定します。
  同時に、指定した値で総称検索を行うかどうかを指定します。

 ■ 総称検索を行う(LIKE '%検索値%')
  絞込み検索機能を有効にした場合、指定した値で総称検索を行うかどうかを指定します。

 ■ システムオブジェクトを表示
  データベース作成時に既定で作成される、システムテーブル・ビューなどの
  システムオブジェクトをオブジェクトリストに表示したい場合はONにします。

 ■ 断片化の割合を初期表示(インデックス一覧)
  インデックス一覧を表示したとき、断片化の割合を初期表示するかどうかを指定します。
  インデックスの数やサイズが多いなど、解析に時間がかかる場合は設定値をOFFにし、
  インデックス一覧に表示しないように設定してください。
  (オブジェクトリストのボタンはこのオプションを切替えるボタンです。
  オブジェクトリスト上ではこのオプション値にかかわらず、
  ボタンのON/OFFによって表示するかどうかを切り替えることができます。)



[定義情報]タブ

 ■ 初期表示タブ
  オブジェクトリストでオブジェクトを選択し、マウスダブルクリック、
  もしくは[ENTER]キーを押した場合に表示されるオブジェクト情報の初期表示タブを指定します。
  「定義情報」「ソース情報」「データ」の中から選択できます。

 ■ 定義変更時に実行されるDDL文を表示する
  [作成]ボタン押下時に実行されるDDL文を画面に表示します。

 ■ 定義変更時にエラーが発生しなかった場合、自動でDDL実行画面を閉じる
  各画面で[作成]ボタンを押すと、実行した DDL 文とその結果をログ表示しますが、
  全ての DDL 文が正常終了した場合は自動でログ表示画面を閉じるか否かを指定します。

 ■ テーブル再作成時に、データ退避テーブルを作成する
  テーブルの定義を変更する時、変更内容によっては DROP TABLE/CREATE TABLE 文を使用して
  テーブルを再作成する事がありますが、その際に既存データを退避するテーブルを
  作成するか否かを指定します。
  ただし、テーブルのソースを直接編集した場合は、データの退避は行われますが、
  変更後のテーブルへのデータ復旧は行われません。
  データを退避したテーブルは、全ての変更作業が正常に終了した場合には自動削除されますが、
  変更作業時にエラーが発生した場合には自動削除は行われませんので、
  必要に応じて手動で削除して下さい。
  チェックを外すと、テーブルを再作成時にデータの退避・復旧は一切行われなくなります。

 ■ SQL文に領域情報を含める
  テーブル、インデックス、制約等のオブジェクトにおいて、ソースに領域情報を
  出力するか否かを指定します。

 ■ 省略時値に文字列を指定した際、シングルクォーテーョンを自動付加する
  テーブル列の省略時値にセットされた値が文字列の場合、生成する SQL に
  シングルクォートを自動付加するか否かを指定します。

 ■ SQL文に項目名を出力する(VIEW)
  ビューのソース表示時、ビュー項目名を出力するか否かを指定します。

 ■ 変更前のソースを保存する
  オブジェクト定義を変更する際、変更前の DDL スクリプトをファイルに出力するか否かを指定します。

 ■ 変更後のソースを保存する
  オブジェクト定義を変更する際、変更後の DDL スクリプトをファイルに出力するか否かを指定します。




[SQL実行]タブ

 ■ SQL履歴数
  [SQL実行]画面での、実行したSQL文の履歴をどれだけ持つかを指定します。

 ■ 文字選択された範囲のSQLのみを実行する
  SQL実行画面にて文字の範囲選択をしている状態で実行した場合、
  選択している部分のSQLのみを実行するか否かを指定します。

 ■ ダイアグラム部
  SQLビルダのダイアグラム部で使用するフォントの名前及びサイズを指定します。

 ■ グリッド部
  SQLビルダのグリッド部で使用するフォントの名前及びサイズを指定します。



[データ]タブ

 ■ 結果表示
  データ出力部分で使用するフォントの名前とフォントサイズを指定します。

 ■ 横方向出力時の表示方法
  データを横方向に出力した場合、データを列のどちら側に寄せるかを指定します。
  標準を指定した場合は、文字は左、数値は右に寄ります。

 ■ 縦方向出力時の最大列幅
  データを縦方向に出力した場合の、最大列幅を文字数で指定します。
  通常、列幅はデータ型のサイズを元に自動設定されますが、サイズが大きくなると
  画面に入りきらない場合もある為、ここであらかじめ列幅の上限を決めておきます。
  データ表示後には、このサイズを超えて列幅を広げる事も可能です

 ■ 横方向出力時の列幅
  データを横方向に出力した場合のデフォルトの列幅をポイントで指定します。

 ■ 100列以上表示する際に列幅調整を行う
  100列以上表示する際に列幅調整を有効にします。
  ただし、列数に応じて表示までの時間が長くなります。

 ■ 件数を指定して開く場合の既定レコード件数
  オブジェクトをデータ件数を指定して開く場合の初期値を設定します。

 ■ 初期状態をデータ編集可能にする
  SELECT文実行時、データ編集可能モードでカーソルをオープンしようとします。
  ([SQL実行]画面の[結果を編集可能にする]ボタンと同様の機能です)

 ■ NULL値を表示する
  これにチェックを入れるとNULL値を(NULL)と表示します。
  チェックを入れないと、結果にはブランクが表示されます。

 ■ グリッドを一行ごとに色分けする
  これにチェックを入れるとデータグリッドが一行ごとに色分けされます。

 ■ 通貨型のデータを数値として表示する
  これにチェックを入れると数値型データを数値として表示します。
  チェックを入れないと、数値型データの先頭に\マークを付加して表示します。

 ■ NULL値を表示する
  これにチェックを入れるとNULL値を(NULL)と表示します。
  チェックを入れないと、結果にはブランクが表示されます。

 ■ NULL値を表示する
  これにチェックを入れるとNULL値を(NULL)と表示します。
  チェックを入れないと、結果にはブランクが表示されます。

 ■ 抽出条件・ソート順序設定画面を予め開いておく
  テーブル、ビュー、スナップショットの[データ]タブにて、
  抽出条件・ソート順序設定画面を開いた状態にするか否かを指定します。
  ([データ]タブの[表示項目の指定]ボタンと同様の機能です)

 ■ 抽出条件に文字列を指定した際、シングルクォーテーションを自動付加する
  テーブル、ビュー、[データ]タブにて、抽出条件に文字列を指定した際、
  データ型が文字型の場合に抽出条件の文字・数値を自動識別するか否かを指定します。

 ■ 日付型の書式
  データタブにおける日付型データを表示する際の書式を指定します。




[キー操作]タブ
 デフォルトのショートカットキーを任意のキー割り当てに変更します。




[外部出力]タブ

 ■ ファイル出力
  テーブル、ビュー等の各種情報画面から、ソースファイルを保存する際に
  使用するデフォルトのフォルダを指定します。

 ■ テキストファイルの形式
  Object Browserで入出力するテキストファイルのキャラクタセットを指定します。
  なお、出力したスクリプトファイルのエンコードは、お使いのエディタの仕様に依存する場合があります。
  その場合、ご使用のエディタにて適切なエンコードを設定してください。

 ■ EXCEL出力
  Microsoft Excel を使用した定義書の出力や SELECT 文の結果出力に関する設定を行います。
デフォルトの出力先 Excelファイルを出力するデフォルトのフォルダを指定します。
出力方向 データを縦方向に出力するか横方向に出力するかを指定します。
列タイトル出力 項目タイトル込みでEXCELファイルに出力するか否かを指定します。
定形フォームファイルに上書きする場合等の項目タイトルの出力が
必要ない場合はOFFにします。
最新のデータを
読み直してから
出力する
EXCEL出力時にSELECT 文を再度実行し、最新のデータを出力対象にします。
標準ダイアログを
使用する
EXCEL出力時に表示されるダイアログを、WINDOWS標準のダイアログにするか、
専用のダイアログにするかを指定します。
専用ダイアログの場合は、ファイル名と同時に各自設定の変更が可能です。
その都度設定を変える事が無い場合はWINDOWS標準の
ダイアログを使用したほうが便利です。
フォームファイル名 各種のEXCEL出力で使用する元ファイルの名前を指定します。
この値を変更することで独自のフォーマットに出力する事が可能です。
(通常は変更しないで下さい)

 ■ クリップボード出力
  テーブルの結果をクリップボードに転送する際の、項目タイトルの出力有無と
  区切り文字を指定します。
  また、出力時に確認ダイアログを表示するか否かを指定します。




[詳細設定]タブ

 ■ クロスリファレンス最大階層
  [クロスリファレンス]画面での、ツリー情報の最大階層を指定します。
  値が大きいほうが精度の高い結果となりますが、その分処理時間がかかります。

 ■ データ生成ツールコミット件数
  [データ生成ツール]の実行時に何件ごとにコミットするかを指定します。

 ■ 自動でトランザクションを開始する
  自動でトランザクションを開始するかどうかを指定します。
  OFFの場合は、自動でコミットされます。

 ■ 実行するSQLのオブジェクト名を大括弧で囲む
  SI Object Browserが発行する各種SQLにある、オブジェクト名の部分を
  大括弧で囲むかどうかを指定します。

 ■ 各種エディット時にコード補完を行う
  コード補完機能の有効/無効を切り替えます。
  コード補完機能とは、例えばユーザ名を入力してドット、または
  F6かCTRL+SPACEキーを押した時点で、そのユーザが所有する
  オブジェクトの一覧が表示される機能のことです。

 ■ INDEXの断片化の閾値設定
  オブジェクトリストでインデックス一覧を表示している際、
  右クリックメニューの「自動判定」に使用される閾値を指定します。

 ■ Management Studio連携実行ファイル設定
  Management Studio、SSIS(DTS)、SQL Profilerの実行ファイルパスを指定します。
  通常、SI Object Browserの初回起動時に自動で設定が行われます。
  これらの入力欄を空白にすると、ツールバーの各呼び出しボタンが無効になります。

 ■ 作業ファイル作成先
  作業用ファイルを作成するディレクトリを指定します。

 *デフォルトではインストールディレクトリ以下のtempフォルダが設定されております。
 インストール時にインストールディレクトリを変更された場合は作業ファイル作成先を
 インストールディレクトリ以下のtempに再設定してください。

 ■ SI Object Browser起動時にインターネット接続可能かチェックする
  チェックすると起動時にインターネットに接続してOBトコの更新状況を確認できます。

3 - 13 エディタオプション

エディタ設定で、 エディタをカスタマイズする事ができます。



[表示]タブ
 ■ フォント
  エディタのフォントサイズとフォント名を指定します。

 ■ ルーラーを表示する
  ルーラーを表示します。
  また、ルーラーを表示する場合は何文字で区切るかの指定もできます。

 ■ タブ文字幅
  TAB文字の幅を指定します。

 ■ 行番号を表示する
  編集部分の左側に行番号を表示するか否かを指定します。
  また、その表示方法も指定できます。

 ■ レイアウト
  文字の開始位置や文字の間隔を指定します。



[フォントスタイル]タブ
 ■ 色の指定
   ソース中の基本色、リテラル値、EOF記号、改行記号、半角スペース記号、全角スペース記号、
   カーソル行の下線、コメント、予約語について、色指定を行います。



[編集動作]タブ
 ■ オートインデント
  改行時に自動で前行と同じ位置になるようインデントします。

 ■ バックスペースアンインデント
  バックスペースキーでインデント解除になります。

 ■ フリーカーソル
  改行記号の後にある位置もカーソルで選択できるようになります。

 ■ タブ文字上を移動可能にする
  タブであけた間隔の間をカーソルで選択できるようになります。

 ■ 行末から次行の先頭にカーソルを移動する
  改行コード以降にカーソルを移動させると、
  次行の先頭へカーソルが移動するように設定します。

 ■ タブ文字を使ってインデントする
  インデントをタブ文字で埋めるよう設定します。

 ■ タブ文字を空白に置き換える
  タブの間隔がすべて空白文字になります。

 ■ 選択領域のマウス・ドラッグを許可
  範囲指定している文字列単位でドラッグできるようになります。

 ■ ドットを入力した際にコード補完機能を呼び出す
  ドットを入力した際にコード補完機能を呼び出します。

 ■ ドットを入力した際にコード補完の遅延表示を行う
  ドットを押下した後、指定した時間内に文字を入力するとコード補完の呼び出しをキャンセルできます。
  Ctrlキーとスペースキーにて呼び出した場合は即時表示します。

 ■ 新しい画面を開いた際はツールパレットを開いた状態にする
  新しくSQL実行画面等を開いた際にツールパレットを開いた状態にします。



[予約語]タブ
 ■ 予約語
  色指定を行う予約語を指定します。[初期値]ボタンを押すと出荷時設定に戻ります。



[SQL整形]タブ
 ■ 項目の改行
  項目を1項目ずつ改行するか、改行しないかを指定します。

 ■ カンマの位置
  カンマの位置を、各項目の後にするか、次行の先頭にするかを指定します。

 ■ ANDの位置
  ANDの位置を、各項目の後にするか、次行の先頭にするかを指定します。

 ■ 予約語の変換
  予約語の項目を大文字にするか、小文字にするか、変換しないかを選択します。

 ■ 項目の変換
  予約語以外の項目を大文字にするか、小文字にするか、変換しないかを選択します。

 ■ 予約語の位置
  予約語の位置を右詰にするか、左詰にするかを指定します。

 ■ インデント
  PL/SQLコードを整形出力する場合の、BEGIN〜END、IF〜END IFなどのブロック内で字下げされる文字数を指定します。



[キー操作]タブ
  メニューから呼び出せる各機能毎に任意のショートカットキーを割り当てる事ができます。
  項目を選択している状態で、実際に割り当てたいショートカットキーを押すことにより設定します。
  また、ショートカットキーを削除したい場合はSPACEキーで削除できます。

3 - 14 レポート定義の登録

登録済みのレポート定義を元に定義書フォーマットをカスタマイズすることができます。



[登録] レポート定義を登録します。
[追加] 新規のオリジナルフォーマットを登録できます。
[削除] 現在選択されているタブの定義書フォーマットを削除します。
[戻す] 全ての変更を取り消します。
[終了] レポート定義を終了します。
[定義タイプ] フォームファイルの定義タイプを設定します。
定義タイプは、オブジェクト一覧、テーブル定義、ビュー定義の3種類です。
(定義タイプを変更することで、見出部、明細部の表示項目の選択肢が
変わります。)
[Excel定義名] 定義名を変更します。
[フォームファイル] 出力時に使用する、Excelフォームファイルを指定します。
(事前にフォームファイルをExcelで作成する必要があります)
[明細開始位置] 明細が開始される行位置を指定します。
[明細行数] 明細の行数を指定します。

3 - 15 オブジェクト比較

異なるスキーマの所有するオブジェクトを比較することができます。



[実行]
 オブジェクト比較を実行します。

[終了]
 ウインドウを閉じます。

[表示するオブジェクトの条件]
 表示するオブジェクトの条件を指定します。複数選択可能でOR条件です。

 ■ 内容一致
  オブジェクト名が両方に存在し、かつ定義内容が一致するものを表示させます。

 ■ 内容不一致
  オブジェクト名が両方に存在するが、定義内容は異なるものを表示させます。

 ■ 比較先1にのみ存在する
  比較先1にのみ存在するオブジェクトを表示させます。

 ■ 比較先2にのみ存在する
  比較先2にのみ存在するオブジェクトを表示させます。

[比較先1、2]

 ■ 接続先
  現在接続している、データベースの接続リストを選択します。

 ■ DB
  対象となるデータベースを指定します。

 ■ 所有者
  オブジェクトの所有者を選択します。

3 - 16 データ生成ツール

既存のテーブルに、データ生成ツールを使用してテーブルにデータを投入することができます。



[実行] データ生成を実行します。
[テスト] データ生成のテストを行います。
[終了] データ生成ツールを終了します。
[データベース] データベースを選択します。
[所有者] スキーマを選択します。
[名前] テーブル名を選択します。
[通常データ生成] 通常のデータ投入方式でデータを生成します。
作成件数は、生成するデータの件数を入力します。
[親テーブルのデータに
 従属するデータを作成]
データを投入するテーブルが、親テーブルと従属関係にある場合、
親テーブルの1件あたりに対するデータ投入件数の範囲を指定します。
データベースを指定すればデータベースをまたいだ
親テーブルからのデータ生成も可能です。
[既存データの
 UPDATE]
既存データに対してアップデートを行います。
主キーのないテーブルには行えません。
[条件指定] UPDATE対象の条件をSQL条件式で設定できます。
※WHERE句意向を記述してください。
[設定値] 連番、乱数値、選択値、固定値、テンプレート、リンクテーブル値、
親テーブル値を指定することができます。
[NULL比率(%)] 投入するデータにNULL値が入る比率を指定します。


[連番(文字列)]


[連番(数値)]


[連番(日付)]


[連番]
 値をインクリメントしながら順に値を割り振ります。
 ID列など一意に番号を並べたい場合に指定します。
 値範囲には、データの初期値を入力します。
 増分値には、初期データから増分する値を入力します。




[固定値]
 すべて同じ値を割り当てる場合、またはSELECT文やFUNCTIONを指定する場合に使います。


[乱数値(文字列)]


[乱数値(数値)]


[乱数値(日付)]


[乱数値]
 指定された値の範囲内でランダムに値を割り振ります。
 文字型の場合は電話番号、メールアドレスなどのフォーマットが指定可能です。




[選択値]
 あらかじめ割り振る値の一覧を作成し、そこからランダムに割り当てることができます。




[テンプレート]
 指定されたテキストファイルから値を割り振ります。
 ファイルは一度に2つまで指定可能です。
 テンプレート1とテンプレート2の間に文字を入れたい場合は、
 区切り文字に間に入れる文字を指定します。




[リンクテーブル値]
 指定されたテーブルと列に存在する値を割り当てます。




[親テーブル値]
 親テーブルの列を指定して、その値を割り当てます。
 (「親テーブルのデータに従属するデータを作成」を選択していないと表示されません。)




[結果]タブ
 データ生成ツールの実行結果が表示されます。
 テストを実行した場合はプレビュー画面が表示されます。

3 - 17 インデックスアドバイザ

SQLに対して使用/未使用の未使用のインデックスの検出や、推奨インデックスの作成を
行うことができます。



SQL文を入力し、解析ボタンを押します。以下の情報が表示されます。

■現在のインデックス
 各テーブルに紐づくインデックスと、そのSQLに対する使用状況が表示されます。
 使用されていないインデックスは赤で表示されます。
 インデックスを選択し、削除ボタンを押すことでインデックスを削除することが出来ます。
 インデックスをダブルクリックすると開きます。

■作成するインデックス
 SQLに対し、作成が推奨されるインデックスが表示されます。
 既に同じ列に対して作成済みのインデックスが存在する場合は、グレーで表示されます。
 選択して作成ボタンを押すか、右クリックメニューより作成を選択することで、
 そのインデックスを作成することが可能です。



またインデックスを選択し、テストボタンを押すと、インデックス作成前と作成後の
パフォーマンスを検証することが出来ます。
(実行計画上のコストで算出します。小さいほどパフォーマンスは向上します。)