この Web ページでは,Eclipse の ij を使って,
を行う手順を説明する.
C:\Program Files\Java\jdk1.6.0_11 のようなディレクトリがあれば,インストール済み.
Eclipse を使う.この Web ページでは,Eclipse のプロジェクト名を次のように書きます.適切に読み替えてください.
この Web ページでは,データベースを新規に作成する.そのために,Java DB データベースディレクトリ(相対)を決めておくこと. この Web ページでは,次のように書きます.
Java DB のデータベースファイルが置かれるディレクトリのことです. これは自由に決めてよいが,半角文字(つまり英字と英記号)を使い,スペースを含まないこと, データベース論理名と Java DB データベースディレクトリとは別ものです.混同しないこと.
なお,Java DB データベースディレクトリは,「dbdir」 のように,相対パス形式で書く場合と,「C:\hoge\dbdir」のように,絶対パス形式で書く場合があります. 今回は,相対パス形式で書きます.
前もって,ワークスペースを置くディレクトリを調べておいてください この Web ページでは,次のように書きます.
データベースURL(接続文字列)を設定する必要が出てきます. この Web ページでは,次のように書きます.
リレーショナルデータベースとして Java DB を使うので,データベースURL(接続文字列)は, jdbc:derby:に,データベースディレクトリ(相対)を付けて, jdbc:derby:dbdirになる.
プロジェクトへのApache Derby ネーチャーの追加 と,Java DB (Derby) サーバの開始を行う. これは, Java DB (Derby) を使うための設定です.
「Apache Derby」が候補として現れないときは, Java DB (Derby) インストール の手順に従って,インストールと設定を行う.
ポート1527 で Derby サーバが起動します.
「Derby ネットワーク・サーバの開始」が選べない状態になっているときは, すでに開始済みなので,この手順は不要.
Eclipse で,プロジェクト HelloWorld を右クリックし, 「Apache Derby」→「ij (Interactive SQL)」と操作する. すると, ij のコンソール画面が開く.以下,ij のコンソール画面で,SQL の発行などを行う.
ここでは,ij コンソール画面を使って,Derby ネットワーク・サーバと接続し,データベースファイルの初期化を行う.
データベースファイルの初期化では,Java DB データベースディレクトリを指定する必要がある. この Web ページでは,説明上, Java DB データベースディレクトリは,「dbdir 」とします.
下記のような connect コマンドを,ij コンソール画面で実行して, データベースファイルの初期化を行う.エラーメッセージが出ていないことを確認してください.
connect 'jdbc:derby:dbdir;create=true';
connect のオプションで,「jdbc:derby:dbdir」と書いています. さらに,「create=true」を付けて,データベースファイルを初期化するようにしている. (create=trueが無い場合は,初期化で無く,既存のデータベースのオープンになります)
Java DB データベースディレクトリを,「dbdir」のような相対パス形式にする場合, データベース・ロケーション(つまり,データベースファイルが置かれるディレクトリ)は, データベース・ロケーションは, C:\workspace\HelloWorld\<Java DB データベースディレクトリ> になる.
要するに,Eclipse の ij を使って,データベースファイルを初期化すると,Java DB データベースディレクトリは,プロジェクトごとに分かれます. 同じプロジェクトに属する プログラムは,同じデータベースファイルを共有し, 違うプロジェクトに属するファイルは,たとえ,同じデータベースディレクトリを指定しても,違うデータベースを使うことになる.
disconnect;
Eclipse で,プロジェクト HelloWorld を右クリックし, 「Apache Derby」→「ij (Interactive SQL)」と操作する. すると, ij のコンソール画面が開く.
既存のデータベースを使いたいので, 「create=true」を付けずに connect コマンドを実行する.例えば,次のようになる.
connect 'jdbc:derby:dbdir';
create table commodity (
type INTEGER primary key not null,
name VARCHAR(32) not null,
price INTEGER );
insert into commodity values( 1, 'apple', 50 );
insert into commodity values( 2, 'orange', 20 );
insert into commodity values( 3, 'strawberry', 100 );
insert into commodity values( 4, 'watermelon', 150 );
insert into commodity values( 5, 'melon', 200 );
insert into commodity values( 6, 'banana', 100 );
SELECT * FROM commodity;
本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.
問い合わせ先: 金子邦彦(かねこ くにひこ) ![]()