メニュー


Derby Console (for Windows)


DerbyをWindows環境で使用する際、コマンド実行環境の設定が面倒だったので、簡易なBATファイルを作りました。(Derby付属のij.batなどはちょっと使いづらかったので)
小さな*.batファイル一つという簡単なものですが、WINDOWS環境ではそこそこ有用だと思うので公開します。好みに編集してお使いください。


特徴

  • ij,sysinfo,dblookなど、Derbyを操作するコマンドが直接実行できるようになります
  • 環境変数などの設定は不要で、BATファイルの中のディレクトリ名を書き換えるだけで使用可能です

ダウンロード

  • ここからダウンロードして任意のディレクトリに展開してください。

セットアップ

  • まだDerbyをダウンロードしていない場合は、Apache Derbyのダウンロードページからdb-derby-10.x.x.x-bin.zipをダウンロードして、任意のディレクトリに展開しておいてください。(この例では、Derby 10.1.2.1 ReleaseをE:\local\derby-10.1.2.1\に展開しています)
  • このページからderby_console.zipファイルをダウンロードして、任意のディレクトリに展開してください
  • DERBY CONSOLE.BATをメモ帳等で開き、ファイル先頭近くにある2つの変数(DERBY_INSTALLとDERBY_SYSTEM_HOME)の値を編集します。DERBY_INSTALLには、Derbyを展開したディレクトリを指定します。DERBY_SYSTEM_HOMEは、Derbyのデータベースを作成するトップディレクトリを指定します。以下はDerbyを展開したディレクトリがE:\local\derby-10.1.2.1\で、DBを作成するディレクトリをE:\local\derby-db\とした例です。

  • これで設定は終了です。DERBY CONSOLE.BATをダブルクリックすると、DOSプロンプトが表示され、コマンドを実行できます。

  • 以下はオプションの設定です。
  • デスクトップ等にDERBY CONSOLE.BATファイルへショートカットを作成し、
  • 以下のようにショートカットのプロパティで「作業フォルダ」を自分の作業ディレクトリに設定しておくと、便利に使えます。


簡単な使い方

エンベッデッドモード(Embedded mode)での使い方


とりあえず試す場合は、エンベッデッドモードが良いでしょう。

  • Derby Consoleを起動して、中でijを実行します。
  • connect 'DB名' ; でDBに接続します。最後にセミコロン(;)が必要です。通常は、'jdbc:derby:DB名'と指定しますが、BAT内でプロトコルとして'jdbc:derby:'を指定しているので、'DB名'だけで接続できます。
  • まだDBが無い場合は、;create=trueをconnect時に指定します。(例: connect 'test1;create=true' ; )
  • 接続後は通常のDDL/DMLが実行できます。
  • デフォルトではAUTO COMMITが有効なので注意が必要です。autocommif off;と実行するとAUTO COMMITがオフになります。
  • AUTO COMMITがオフの場合は、commit;もしくはrollback;でトランザクションを完了させる必要があります。DerbyはDDL(例:CREATE TABLE)も基本的にrollbackの対象になります。
  • ij内で、HELP; とタイプするとijの簡単なヘルプが出力されます。
  • 接続を解除するには、disconnect;を実行します。
  • ijを終了するには、exit;を実行します。

ネットワークサーバとして使う

  • 外部のマシンから接続したり、複数のJVMから接続したい場合はネットワークモードで起動する必要があります。(一般的なDBMSと同じ)
  • Derby ConsoleからNetworkServerControl start でネットワークモードで起動します。デフォルトのポート1527で待ち受ける状態になります。

  • ijで接続するには、もう一つDerby Consoleを立ち上げ、その中でijを起動し、connect 'jdbc:derby://ホスト名:ポート番号/DB名'; で接続します。(例)connect 'jdbc:derby://localhost:1527/testr1';
  • ポート番号の指定はデフォルトの1527を使用している場合は省略できます。
  • ネットワークサーバで起動したDerbyを停止するには、別のDerby ConsoleからNetworkServerControl shutdownを実行します。

実行できるコマンド

  • ij :対話的にDBを操作します
  • sysinfo :Derbyのシステム情報を表示します
  • NetworkServerControl :ネットワーク経由でサーバ情報を取り出したり、ネットワークサーバを起動/停止する操作などを行います
  • dblook :既存の表などからDDLを抽出するコマンドです
上記は、Derby標準のコマンドです。オプションなどの詳細はDerbyアーカイブの/docs/pdf/tools/derbytools.pdf もしくはオンラインマニュアルを参照してください。
またこのBATファイル内では、nsctldblist というエリアスが登録されています。nsctl はNetworkServerControlとまったく同じです(NetworkServerControlだと長いので短い名前で登録しています)。dblist はDB一覧を表示します。これは、単に%DERBY_SYSTEM_HOME%以下のディレクトリ名一覧を表示しているだけです。

補足

  • ライセンスをどうこう言うような規模のものではありませんので、サンプルとして自由に使用してください。
  • このサイト上のファイルを使用した結果、利用者に生じるいかなる損害にも作者は一切責任を負わないものとします。利用者の責任で使用してください。

コメント欄

名前:
コメント:






| 新しいページ | 編集 | 差分 | 編集履歴 | ページ名変更 | アップロード | 検索 | ページ一覧 | タグ | RSS | ご利用ガイド | 管理者に問合せ |
@wiki - 無料レンタルウィキサービス | プライバシーポリシー | リンク元 | トラックバック