Javaプログラミング/Javaプログラミング関連情報

Java 6のJava DBでデータベース(3ページ目)

Java 6には、標準で「Java DB」というデータベースフレームワークが用意されています。これを使ってみましょう。

執筆者:掌田 津耶乃

データベースを操作する


データベース・エクスプローラーの「接続」を展開すると、その中に「test」という項目が新たに表示されます。これが、作成したJava DBの「test」データベースへの接続です。ただし、表示はされますが、まだこのデータベースは空っぽです。ここにテーブルを作成し、レコードを追加していかないと役には立ちません。

では、SQLを使ってデータベースを操作することにしましょう。WTPでSQLコマンドを送信するには、「SQLスクラップブック」と呼ばれるものを利用します。データベース・エクスプローラーから「SQLスクラップブックを開く」アイコンをクリックしてください。

接続の選択で「test」を選ぶ。


現れたダイアログで、「test」を選ぶと、「test」データベースを操作するためのSQLスクラップブックを作成するための新規作成ウィザードが現れます。ここで親フォルダーにプロジェクトを選択し、ファイル名を適当に付けてSQLスクラップブックを作成します。(ここでは、scrapbook)

保存するプロジェクトとファイル名を入力する。


これで画面(エディタが表示されるところ)に、作成したSQLスクラップブック名のエディタが現れます。これは、ただのシンプルなテキストエディタのように見えますが、ここにSQLコマンドを記述して実行することができるのです。

(※その後のバージョンアップにより、現在はSQLコマンド実行は「SQLファイル」と呼ばれるファイルを作成して行うようになっています。ファイルの作成は変わりましたが、基本的な操作などはほぼ同じです)

では、テーブルを作成しましょう。ここではサンプルとして、レコード識別用のナンバーと、名前、その他の情報などを保管する、ごくシンプルなテーブルを作成してみます。以下のクエリー文を記述し、右クリックして現れたメニューから<SQLの実行>メニューを選ぶとクエリーが実行されます。

・テーブル作成
create table mytable (number int primary key,name varchar(255),
    etc varchar(255));


SQLスクラップブックからクエリーを実行する。


こんな感じでしょうか。これでnumber,name,etcといった項目を持つテーブル「mytable」を作成しました。numberにprimary keyを設定しておくことにしました。またnumberはint値に、他の2つはvarcharで255文字以内にしておきました。

では、作成したテーブルに、サンプルとしていくつかレコードを追加してみましょう。これは、あくまでサンプルですので、それぞれで自由に値を追加してかまいません。

・レコードの追加
insert into mytable values (1001,'tuyano','this is test.');
insert into mytable values (1002,'Taro','my friend.');
insert into mytable values (1003,'Hanako','my girl friend.');
insert into mytable values (1004,'Hoge','who?');


numberをprimary keyにしていますので、この値が重複しないように注意さえすれば、後は適当に追加してかまわないでしょう。追加したレコードが問題なく保存されているかどうかは、selectで一覧表示させてみればわかります。

・表示
select * from mytable;


SELECTを実行すると、結果が「データ出力」に一覧表示される。


SQLスクラップでselectを実行すると、「データ出力」ビューの「結果」というタブに実行結果が一覧で表示されます。表の形で整理されるので非常にわかりやすいですね。


  • 前のページへ
  • 1
  • 2
  • 3
  • 4
  • 6
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます