Oracle 10g Express Edition で SQL の練習とかしてみる

2006/11/12

データベースは今まで真面目にいぢってなかったんですけれど,SQL くらい生かじりにしないで,ちゃんと書けた方がいいなということで,巷の RDB をぼちぼちいぢっています。もっとも,個人が扱える RDB といったら,オープンソース系の MySQL とか PostgreSQL くらいなもんで,商用データベースはなかなかいぢる機会がありません。中でも,企業サイトのデファクト・スタンダードになっている Oracle なんかは高嶺の花で,いぢる気すらありませんでした。

じゃあ,Oracle 10g Express Edition ってのは何かというと,期間制限のないフリーの Oracle 10g です。個人的には,SQL を書けるようにするだけだったら,MySQL や PostgreSQL でもよかったんですけれど,Oracle の場合,PL/SQL なる言語が割と有名なので,これをいぢる目的も兼ねてインストールしてみました。

まだ日本の OTN(Oracle Technology Network)には入ってないみたいですけれど,本家の OTN では配布されています。ダウンロードは以下からどうぞ(※要登録)。Linux 版もあるけれども,今回は Windows 版をインストールしてみました。「Oracle Database 10g Express Edition (Universal)」なるパッケージを選べば,日本語も扱えます。

インストーラでやることは,管理者ユーザである SYSTEM と SYS のパスワードを設定するくらいで,特に難しいことはありません。サクサクとインストールすると,ウェブベースの管理画面が起動します。こんな感じ。

おしゃれな画面でユーザ管理やらリソース管理やらができます。

さて,というわけで,Oracle 10g XE をインストールしたわけですけれど,やりたいことは SQL や PL/SQL をいぢることなので,当面はコンソールからパチパチとコマンドを打っていくことになります。MySQL で mysql みたいなコマンドを使うのと同様に,Oracle の場合は,SQL*Plus というツールを使って,データベースとやりとりします。

練習に当たっては,自前でスキーマを書いてデータを作るのもいいんですけれど,SQL の本でお勉強……。SQL*Plus の詳しい使い方や,RDBMS の設定方法については,OTN のドキュメント・ページからいただいてくることにします。

ついでですから,手元に用意した本をいくつか紹介します。まずはこちら。

中学生の参考書みたいで,ちょっと恥かしいんですけれど,SQL の入門書としては最適だと思います。

本書を読む前は,ブログのメンテナンスのために,必要な箇所だけをいちいちウェブから仕入れていたんですけれど,一通り読み終えてから,割と自信を持ってメンテナンスができるようになりました。SQL の場合,難しい理屈をウンウンと考えるよりも,ガンガン書きまくるのが一番だと思います。もちろん,大規模な DB を扱うようになると,SQL の書き方ひとつでパフォーマンスがえらく変わってくるらしく,頭を使ってウンウン考えなくちゃいけないこともあるんだそうです。けれど,それはここにあることが一通りできるようになってからということで……。

本書には,MySQL とサンプルデータが添付されているので,Windows BOX があればすぐに練習を始めることができます。もちろん,本書は「ドリル」ですから,読んでるだけじゃ身に付きません。打つべし,打つべし。

で,次がこちら。

[2] 現場で使えるSQL. 小野哲, 藤本亮. 翔泳社. 2001年.

こちらも,SQL 本の中では定評があるようで,実際便利に使わせてもらってます。形式としては,前掲の『書き込み式SQLのドリル』と同様で,問題を解いて解答を読むといったドリル形式に近いものがあります。問題数も100問用意されているので,練習用途にもピッタリ。

あたしゃ独学なもんで,どれくらい書けたら SQL の水準としてどんなもんなのかってなことが全く分からないんですけれど,とりあえず,本書は「これだけ分かればひと通り SQL が書ける!」という水準まで紹介しているみたい。もっとも,内容はというと,「SELECT * FROM foobar」のような話から段階を追ってレベルが上がっているので,尻込みする必要は無さそうです。

あたしが持ってるのは初版なんですけれど,近日中に第2版が出るそうです。

[3] 現場で使えるSQL. 第2版. 小野哲, 藤本亮. 翔泳社. 2006年.

Oracle 10g や SQL Server 2005 に対応しているとのことなので,これから買うならこっちでしょうか……。

最後に,PL/SQL 関係の本として,こちらをご紹介。

[4] やさしいOracle PL/SQL入門. 志達也. 翔泳社. 2002年.

PL/SQL ってのは,SQL をまとめて DB に組み込めるプログラミング言語です。Oracle 独自の実装なので,縁が無い向きには全く縁がないけれども,縁がある向きにはもはや「常識」になっている(らしい)という……ヘンテコな位置付けにあるのが,なんともいやはや。

こちらは,ドリルというよりも解説書なので,あまり練習する場はありません。練習は前掲『現場で…』に PL/SQL の問題があるので,そっちですることになりそうです。というか,あたしの場合,そもそも使う機会があまりない感じもするんですが……。

解説は SQL について多少の知識がいるものの,プログラミングの経験云々については,無くてもそれなりに読めるようになっています。何らかのプログラムを書いたことがある向きにとってみたら,説明がまわりくどく見えるかもしれないけれども,それは御愛嬌ということで。

長年高嶺の花だった Oracle も,ついにフリー版が出たということで,にわかに DB 周辺が面白いことになってきている感じがします。この際ですから,オープンソースな方も Oracle に触ってみたらどうでしょうか。

Site Navigation
SNS Accounts (@aian)

普段はここら辺に住んでいます.