目次


新人OLと学ぶ、5分でわかるDB2講座

第4回 5分でわかる!DB2 pureXML(2)

Comments

コンテンツシリーズ

このコンテンツは全#シリーズのパート#です: 新人OLと学ぶ、5分でわかるDB2講座

このシリーズの続きに乞うご期待。

このコンテンツはシリーズの一部分です:新人OLと学ぶ、5分でわかるDB2講座

このシリーズの続きに乞うご期待。

第4回 5分でわかる!DB2 pureXML(2)

テキスト版

P1(表紙)
みなさん、こんにちわ!さくら子です。最近ぐっと冷え込んできましたね。 先週の金曜日は部署の忘年会がありましたが、私は新人なので幹事の仕事をがんばりました。
12月は忘年会が多いと思いますが、みなさんも飲みすぎには注意してくださいね^^
さて、新人OLと学ぶ5分でわかるDB2講座、きょうは第4回ということで、pureXMLを実際に使ってみたいと思います。

P2
前回はXMLとpureXMLの概要について学んだので、今日は、具体的にXMLを使って、項目追加の容易性や、検索方法を一緒に考えていきましょう。
ということで、きょうも楽しくはじめたいと思います。

P3
始める前にですが、さくら子は初心者なので、XQueryとSQLを開発するのに便利なIBM Data Studioを使ってDB2を操作してみたいと思います。
インストールは『IBM Data Studio 2.2 インストール』を検索してみると出てくるので、第2回のDB2の始め方と同じ要領でインストールしてみてくださいね!

P4
では、さっそく1万件のXMLデータを操作してみましょう。
まず私のデータベースにはあらかじめ格納された1万件のXMLデータが登録してあります。
この1万件という多くのXMLデータをどのように扱っていけばいいのかを、学びましょう。

P5
それではまず、XMLの項目変更の柔軟性について学びたいと思います。
まず、RDBだとこのように、create tableで表を作るときに、必ず項目名・項目のデータ型・データの大きさなど事前に決まってなくてはいけません。【(項目名:氏名、生年月日、出身、血液型、項目のデータ型:文字列型であるvarchar、データの大きさ(50))】さらに、変更する際もalter tableでadd columをして項目を追加したり、drop columnで項目を削除したりしなければならないので、柔軟性に欠けてしまい、膨大な作業と時間が発生してしまいます。それがXMLだと、事前にデータベースの項目名・データ型・大きさを指定することなく、追加したい項目をXMLの中を変更することで対応できます。したがって、データベースの器に関しては変更する必要がありません。こうすることで、作業時間を大幅に削減し、変化の多いデータを柔軟に扱えるようになります。

P6
では、次に、XMLのデータを検索してみたいと思います。
さて、先ほどこの中には1万件のデータがあると言いましたが、実はこの中に私、さくら子のプロフィールが混ざっています。
(ちなみに、私のDBには1万件入っていますが、みなさんはデータをダウンロードできるようにしておきます)
1万件の中から探すのは気が遠くなりそうですが、実は簡単な方法があるということがわかりました。
それがXMLを検索する言語「XQuery」です。
では、そのXQuery言語を使って検索するまでのステップをData Studioを使って一緒に学んでいきましょう。
まずはこのページで、データベースを操作するためのプロジェクトを作ってみます。 まず、Data Studioの画面から、左上の「データプロジェクト・エクスプローラー」から右クリックで、データ開発プロジェクトを選択します。
そして、プロジェクト名を仮に「さくら子を探せ」とし、次へをクリックし、デフォルト・スキーマに「DBADMIN」を入力します。
そして「さくら子を探せ」のフォルダができあがります。ここまでプロジェクトの作成を学びました。

P7
その中で、SQLscriptを右クリックして新しいXQueryファイルを用意して、そこにXQueryを書いていきます。
何もないところに書くのは不便なので、コンテンツ・アシストを使って書いていきます。
真ん中の空白の画面で右クリックし、コンテンツ・アシストを選択します。
そして、その中からXQuery for –Clause with Where Clause を選択し、表示されたデータからもう一度右クリックでコンテンツ・アシストを選択します。
今度は、その中からdb2-fn-xmlcolumns functionを選択し、XQuery言語を表示します。

P8
さらに、表示されたXML言語の中から、青字になっているシングル・クォーテーションの中にMYPROFILE.XMLDATAと入力します。
そしてさらに、where expressionを$i/指名=さくら子で、さくら子を探すための条件を入力します。
右クリックで実行を押せば、見事1万件の中から1件さくら子のプロフィールを抽出することができます。
今回はこのXQueryを使ったクイズを用意しております。クイズの正解者の中から抽選でさくら子よりクリスマス・プレゼントを用意しております!
詳しくはこの回が掲載されているウェブで載せていますのでご覧ください。

P9
さて、今回はみなさん、XMLを少しでも理解していただけたでしょうか?
次回は、5分でわかる!強烈な圧縮、DB2データ圧縮を一緒に学んでいきたいと思います。
お楽しみに!

さくら子さんからのクリスマス・プレゼントのお知らせです!

クリスマス

問題

さくら子さんのプロフィールで、「好きなお酒」は何でしょうか?下記の要領に従ってデータベースをダウンロードし、 XMLになっているさくら子さんのプロフィールから「好きなお酒」を見つけて下さい。1万人分のダミー・データも合わせて 登録されていますので、第4回をしっかり受講しXQueryで検索しないと、さくら子さんのプロフィールは見つかりません。

応募方法

件名に「サプライズ・プレゼント応募」と書き、IODTODAY@jp.ibm.com まで正解をメールして下さい。正解者の中から抽選で10名様に、 さくら子さんからのサプライズなプレゼントをお贈りします。(応募の〆切は、2010年1月12日です。尚、IBM社員の方はご遠慮下さい。)

データの復元方法

下記の手順でデータベースのバックアップ・ファイルをダウンロードし、DB2にリストアして1万件のデータを利用できるようにします。

バックアップ・ファイルのダウンロード

まず最初にダウンロードで、バックアップ・ファイルをダウンロードします。Windows(x32)とLinux(x32)用のファイルを用意してあります。

  • Windows用 : PROFILE.tar.gz
  • Linux用 : PROFILE.zip

バックアップ・ファイルのリストア

ダウンロードしたバックアップファイルを解凍し、DB2にリストアします。以下にWindowsでのコマンドの例を示します。

D:\DB2講座>db2 restore db profile
SQL2539W  警告!
バックアップ・イメージ・データベースと同じ既存データベースをリストアします。デー

タベース・ファイルは削除されます。
続けますか。 (y/n) y
DB20000I  RESTORE DATABASE コマンドが正常に完了しました。

Windowsではdb2adminというスキーマに、Linuxではdb2inst1というスキーマにMYPROFILEというテーブルがあります。

収録後記

「実際、RDBでデータベースを作ってみましたが、記入内容がXMLよりも多く、
スペルミスで何度も作りなおして大変さを実感しました。

ところで、XMLの発音って難しいんですね、、笑いが止まらず何度も撮りなおしました。
そんなユニークな部分も感じとってみてもらえると嬉しいです。」 by さくら子

DB2研修のご案内

初めてDB2に触る方を対象とした入門コースから、DB2を使用したアプリケーション開発、DB2データベース管理、さらにはパフォーマンス、リカバリーおよび高可用性を扱う上級者向けのコースまで、幅広く提供しています。データ・ウェアハウスやビジネス・インテリジェンス・システム構築のためのコースも提供しています。

DB2講座


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Information Management
ArticleID=458139
ArticleTitle=新人OLと学ぶ、5分でわかるDB2講座: 第4回 5分でわかる!DB2 pureXML(2)
publish-date=12222009