<script type="text/javascript">
</script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
前回はOSとしてWindowsを使用しましたが、やっぱり運用がUnixというだけに、Unixバージョンで行きます。
環境は以下の通りです。
- OSはSolaris10(SPARC版)
- Javaは1.6.0_20
- JavaDB(Apache Derby)は別途10.6.1.0で行きます。
- Javaでプログラムを書くこともあるので、Antも使います。バージョンは1.8.1です。
Windowsと同様にJava(JAVA_HOME)、JavaDB(DERBY_HOME)、Ant(ANT_HOME)の環境変数を定義し、各APのbinをPATHに追加します。
> java -version
java version "1.6.0_20
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)
> ant -version
Apache Ant version 1.8.1 compiled on April 30 2010
> sysinfo
------------------ Java 情報 ------------------
Java バージョン: 1.6.0_20
Java ベンダー: Sun Microsystems Inc.
Java ホーム: /usr/jdk/instances/jdk1.6.0/jre
Java クラスパス: /opt/db-derby-10.6.1.0-bin/lib/derby.jar:/opt/db-derby-10.6.1.0-bin/lib/derbynet.jar:/opt/db-derby-10.6.1.0-bin/lib/derbytools.jar:/opt/db-derby-10.6.1.0-bin/lib/derbyclient.jar
OS 名: SunOS
OS アーキテクチャー: sparc
OS バージョン: 5.10
Java ユーザー名: XXX
Java ユーザー・ホーム: /export/home/XXX
Java ユーザー dir: /export/home/XXX
java.specification.name: Java Platform API Specification
java.specification.version: 1.6
java.runtime.version: 1.6.0_20-b02
--------- Derby 情報 --------
JRE - JDBC: Java SE 6 - JDBC 4.0
[/opt/db-derby-10.6.1.0-bin/lib/derby.jar] 10.6.1.0 - (938214)
[/opt/db-derby-10.6.1.0-bin/lib/derbytools.jar] 10.6.1.0 - (938214)
[/opt/db-derby-10.6.1.0-bin/lib/derbynet.jar] 10.6.1.0 - (938214)
[/opt/db-derby-10.6.1.0-bin/lib/derbyclient.jar] 10.6.1.0 - (938214)
------------------------------------------------------
----------------- ロケール情報 ----------------
現行ロケール : [日本語/日本 [ja_JP]]
ロケールのサポートが見つかりました: [cs]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [de_DE]
&nbs;&nbs; バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [es]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [fr]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [hu]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [it]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ja_JP]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ko_KR]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [pl]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [pt_BR]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [ru]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [zh_CN]
バージョン: 10.6.1.0 - (938214)
ロケールのサポートが見つかりました: [zh_TW]
バージョン: 10.6.1.0 - (938214)
------------------------------------------------------
DERBY_HOMEからデモ用のスクリプトをコピーします。
> cd /var/tmp
> mkdir DERBYTUTOR
> cd DERBYTUTOR
> cp $DERBY_HOME/demo/programs/toursdb/* .
> ls
ToursDB_schema.sql |
insertMaps.java |
loadFLIGHTAVAILABILITY1.sql |
loadTables.sql |
build.xml |
loadAIRLINES.sql |
loadFLIGHTAVAILABILITY2.sql |
smallisle.gif |
cupisle.gif |
loadCITIES.sql |
loadFLIGHTS1.sql |
toursdb_readme.html |
disconnect.sql |
loadCOUNTRIES.sql |
loadFLIGHTS2.sql |
witchisle.gif |
Derbyデータベースの作成とSQLステートメントの確認
Derbyツールのij(シェル・スクリプト)を使うと良く見えてこないんで、javaコマンドを明示的に起動してみます。
> java -jar $DERBY_HOME/lib/derbyrun.jar ij
ij バージョン 10.6
ij>
最初のデータベースに接続してみましょう(前回もやりましたが、おさらいの意味で)
> CONNECT 'jdbc:derby:firstdb;create=true';
コネクション・コマンドを説明します。
connect:データベースとの接続を確立します。
jdbc:derby:Derbyドライバーに関するJDBCプロトコル設定です。
firstdb:データベースの名前です。
;create=true:データベースを作成するために使用するDerbyURL属性です。Derbyには「create database」コマンドはありません。
;:セミコロンがijの終端子です。これは必ずです!!
■標準的なSQLを使って2つのカラムを定義したテーブルを作成します。
ij> CREATE TABLE FIRSTTABLE(ID INT PRIMARY KEY,NAME VARCHAR(12));
0 行が挿入/更新/削除されました
■3レコード追加します。
ij> INSERT INTO FIRSTTABLE VALUES(10,'TEN'),(20,'TWENTY'),(30,'THIRTY');
3 行が挿入/更新/削除されました
■テーブル中の全レコードを簡単な問合せで検索します。
ij> SELECT * FROM FIRSTTABLE;
ID |NAME
------------------------
10 |TEN
20 |TWENTY
30 |THIRTY
3 行が選択されました
■カラムID=20で絞り込み検索をします。
ij> SELECT * FROM FIRSTTABLE WHERE ID = 20;
ID |NAME
------------------------
20 |TWENTY
1 行が選択されました
■SQLスクリプト ToursDB_schema.sql を実行します。
ij> run 'ToursDB_schema.sql';
・・・中略・・・
ij> COMMIT;
ij>
■ijツールを終了します。
ij> exit;
<form action="http://www.google.co.jp/cse" id="cse-search-box">
<input type="hidden" name="cx" value="partner-pub-3407383286528802:x1hdk1ewp2s" />
<input type="hidden" name="ie" value="UTF-8" />
<input type="text" name="q" size="31" />
<input type="submit" name="sa" value="検索" />
</form>
<script type="text/javascript" src="http://www.google.co.jp/cse/brand?form=cse-search-box&lang=ja"></script>