データベーススペシャリスト試験の勉強法まとめは移転しました
 情報処理試験まとめは、まとめwikiより情報処理試験関連情報だけ独立して情報を一新し別サイトに移転しました。
 今後ともまとめwikiをよろしくお願いいたします。
 移転先の情報処理技術者試験まとめwikiのトップページはこちら
+...
データベーススペシャリスト試験の勉強法まとめ

目次

はじめに

はじめに

 モバイル版が表示されてしまう人は画面最下部のPC版はこちらをクリックで見やすいページが表示されます。
 データベーススペシャリスト試験に合格するための勉強方法、お勧め参考書、お勧め参考書、勉強テクニック、解答のコツなどを紹介。

解答テクニックは別ページにまとめました

 解答テクニックに関する内容は、記述内容を追加して文字数が多くなったため別ページにまとめました。あわせてご覧ください。
データベーススペシャリスト試験の解答テクニック

関連ページ

データベーススペシャリスト試験とは

概要

 主にデータベースに関連する能力が問われる試験。データベースに関する企画、開発、運用、保守など全般に関しての知識が問われる試験。具体的には下記のような能力が問われる。
  • データ管理者として,情報システム全体のデータ資源を管理する。
  • データベースシステムに対する要求を分析し,効率性・信頼性・安全性を考慮した企画・要件定義・開発・運用・保守を行う。
  • 個別システム開発の企画・要件定義・開発・運用・保守において,データベース関連の技術支援を行う。

難易度

 データベーススペシャリスト試験はあらゆるコンピュータなどのIT技術者試験のなかでも難易度が高い試験と言われている。いきなりこの試験を目指すのは難しいと思うので、少なくとも応用情報処理技術者試験程度は合格してから望むのがいい。

試験傾向

 試験問題の傾向はわりとはっきりしているので、この後にお勧めする参考書を中心に学習することでおおまかな傾向の理解はできると思う。試験の内容的には暗記量はそれほどでもないが、思考力、応用力、発想力などが求められる傾向が強い。そのため基本を忠実に抑え、問題に対して解決する能力を養うことが重要となる。
 上記のような特性から、一般的には「解答して楽しい」などとも言われるが、解答時間にはシビアな傾向だ。従って、一つの問題に多くの時間を消費せず、とにかくすべてに解答し一点でも多く獲得することが重要となる。

勉強方針

求められる技術力

 IPAによると求められる技術力というのは以下の通り。
  • データベース技術の動向を広く見通し,目的に応じて適用可能な技術を選択できる。
  • データ資源管理の目的と技法を理解し,データ部品の標準化,リポジトリシステムの企画・要件定義・開発・運用・保守ができる。
  • データモデリング技法を理解し,利用者の要求に基づいてデータ分析を行い,正確な概念データモデルを作成できる。
  • データベース管理システムの特性を理解し,高品質なデータベースの企画・要件定義・開発・運用・保守ができる。
 これをみればわかりようにデータベースに関する全般の知識が必要で、具体的には必要に応じた技術の選択、現状のビジネスロジックにおけるデータの扱いから最適な概念データモデルを作成し実際に実装する知識、データベース運用に関する運用や保守に関する仕組みが必要となる。

方針決定

 データベーススペシャリスト試験は高度試験であるので、まずは最低限でも基本情報処理技術者試験に合格できる程度の知識が必要になる。この知識がないと午前1をクリアできないので、まずは基本情報を合格できる程度の知識を、可能ならば応用情報に合格できる程度の知識を得るのが望ましい。
 その後はおおむね以下の3コースにわかれると思う。

オススメコース1-最初からコース-

 基本情報、応用情報の知識はあるけど、データベースに関する実務経験はまったく無いケース。この場合はデータベースに関する基礎から勉強する必要がある。データベースとは何?というところから始まると思うので、下記に記述する勉強方法のstep1から初めてしっかりとした知識を身につけることが望ましい。

オススメコース2-クエリ勉強コース-

 基本情報、応用情報の知識があり、データベースに関してもそれなりの知識はあるが、クエリを書いたことがないパターン。クエリを覚えなくても合格できるという意見もあるが、クエリの学習をするとDBの仕組みを詳しく理解できるので、やはりクエリについて学習することがお勧めだ。
 より合格を確実なものとするために、SQLを学習することから始める人は下記の勉強方法のstep2から開始しよう。

オススメコース3-過去問重視コース-

 試験までの期間が短い人、勉強する時間がない人、業務でデータベースの構築経験がある人はこのコース。
 時間的に余裕の無い人はこのコースを選択するしかない。また、すでに業務経験がありデータベースに関する経験がある人も、およそこのコースで十分だと考えられる。下記の勉強方法のstep4から開始しよう。

お勧め参考書

参考書の種類について

 参考書をいろいろみてみると、参考書は学習することをメインに作られた学習用参考書と、合格するためのテクニックを追求したようなテクニック習得用参考書の二種類にわかれる。学習用の参考書はデータベースの基礎から記述されており、データベースのことを知らない人にもわかり安い作りになっている。テクニック習得用の参考書は基礎を習得している人向けに記述されており、合格するための情報や解答テクニックがメインとなっている。
 学習用とテクニック用のわかりやすい区別の方法は、過去問の解説にどれだけページ数を割いているかだ。過去問の解説がない参考書はゼロから勉強するのに向いている学習用参考書と言える。過去問の解き方を解説している参考書はテクニック重視の参考書と言える。そして、それらの中間の参考書はデータベースに関する知識も解説しながら過去問も解説するというようなハイブリッド型になっている。
 データベースでの開発経験の無い人は学習用参考書とテクニック習得用参考書を二冊、開発経験のある人はテクニック習得用参考書だけ利用するなどというように工夫をしよう。
 ハイブリッド型は過去問の掲載数も少ないし、説明も中途半端なので避けたほうがいい。

学習用参考書

 データベースの業務経験が無い人は、まずは参考書を利用してデータベースに関する基礎知識から学習するのがお勧め。データベースの学習のための本はいろいろあるが、やはり資格試験で必要とされている知識はある程度決まっているので、資格試験用に記述された参考書での学習がお勧め。

2017年学習用参考書一覧

テクニック習得用参考書

 実務経験がある人も無い人も絶対に購入すべき参考書がテクニック用参考書だ。情報処理教科書は自分も実際に利用してとても重宝したのでおすすめできる。特に午後1、午後2の解説や解答方法の具体的なテクニックが記述されており、これを読むことで解答能力が確実にUPする。
 データベーススペシャリスト試験における独特の解答の言い回しもしっかり記述されており、これを暗記するだけで確実に回答欄を埋めることができる。
 テクニックだけでなく正規化、データモデリングに関する解説もしっかり記述されているので、データベースの構築経験やクエリを書ける人がうろ覚えにしている知識も再確認できる。
 さらに多くの過去問解説をWEBからダウンロードして入手することができる。この解説は一つの問題に対して数ページ、場合によっては10ページ近く解説がされており購入する価値は高い。
 過去問はこの参考書で網羅されているので、これを一冊購入すればわざわざ午後1、午後2用の過去問題集も買う必要はないのでお勧めだ。

2017年テクニック習得用参考書(情報処理教科書が最もおすすめ、絶対に購入すべし)

勉強方法

基本的な流れ

 基本的にはSTEP1から順番にこなしていこう。基本情報技術者、応用情報技術者試験に合格していない人は、まずはそれぞれのどちらかを合格しておいたほうがいいと思われる。
 データベースの開発経験が無い人はSTEP1からSTEP5まで順番に。ただし時間が無い人はSTEP1とSTEP2を飛ばしても構わないし、クエリを学習しなくともなんとかなると考えている人はSTEP2を飛ばしても構わない。
 データベースの開発経験のある人、クエリをかける人はSTEP1~3を飛ばしてSTEP4からこなしていこう。

step1 基礎学習-午前2対策-

 まずはデータベースの基本を学ぶのがSTEP1。ER図、バックアップ・リカバリ、テーブル設計、チューニング、分散システム、正規化、トランザクションなど基本的なことを学習していこう。
 具体的には学習用の参考書を利用してデータベースに関する基本を勉強していく。内容をすべて暗記する必要はなく、データベースがどういうもので、どのような動きをしているのかなど仕組みについて理解することを心がけるようにしよう。この段階で完璧に理解するのは難しいので、step5に進む過程でわからない内容などがでてきたら、その都度参考書で再学習して理解を含めていこう。

step2 クエリの勉強-基本的なDBの仕組みの学習-

 最近はクエリに関する設問もかなり増えているようなので、基本的なクエリや関数を覚えておいたほうが合格率が高まる。
 具体的な勉強方法は 応用情報技術者試験向けデータベース入門 を参考にしてもらえればいいと思う。応用情報向けだが基本的にこの程度のクエリが理解できればなんとかなる。あとは知らない関数などがでてくる度に、実際に自分でクエリを記述して動作を確認すれば問題ない。
 基本的には、grant, create table, drop table, insert into, update, delete, select, where, group by, having, order by, inner join, outer join, sum, count. max, avg, datetime, between, exists, notあたりと、サブクエリまで抑えておけば大丈夫だと思う。

step3 午前2対策

 実務経験がない人は午前2の過去問を解いて基本的な知識が身についているか確認しよう。おおむね毎回80%程度解答できるようになったら問題ない。基本的に午前問題は暗記で突破できてしまうので時間がなければ過去問の丸暗記でも問題ないが、午後問題では様々な知識が求められるため、丸暗記ではなくしっかり理論を把握しておくことが望ましい。
 午前2問題の演習時には、正答以外の選択肢に記述されている内容についても理解できているかも確認すること。もし解答を間違ったり、選択肢の内容が一つでも理解できなかった場合は、その問題に「正」の字でチェックをする。これは間違うたびにチェックをする。こうすると間違った回数がわかるので、その分野が苦手だということを確認できる。その分野については参考書で再学習して知識を高めるようにしよう。
 80%程度解答できない場合は、過去問を周回して、それでも間違った問題に関しては参考書を利用して学習するようにしよう。

step3.5 応用情報DB関連の学習-DB問題の基礎-

 時間がある人は、応用情報午後問題のデータベースに関する問題も解いてみよう。過去問はIPAのホームページに解答と共に公開されている。応用情報のデータベースに関する問題は、本当に基礎的な内容なのでこれが解けなければSTEP4、5に進んでも意味がない。過去問を読んで問題がわからないレベルならSTEP1、2に戻って学習を続けよう。楽々解ける感じならSTEP4に進んでも構わないが、ところどころまったくわからないような設問がでてくる場合は、その分野に疎いことが考えられるので、その分野に関する知識を再度学習することにしよう。

step4 午後1対策

 実務経験がある人はSTEP4からのスタート。ただし経験がある人が必ずしも午前2をクリアできるだけの知識があるとは限らないので、過去数年度分の午前2問題を解いて80%以上解答できることを確かめよう。もし80%以上解答できない場合は、残念だがstep3に戻り80%以上解答できるようにしておこう。
 まずは 情報処理教科書 データベーススペシャリスト の午後1の解答テクニックが紹介されているページを熟読して解答テクニックを身につけておくこと。特に正規化、概念データモデリング、ER図などに関することの知識は必須になるので、その該当部分の知識を深めておく。
 次にいよいよ過去問を解いていく。可能であれば過去問を2周ほど回すのが望ましいが、もし時間がなければできるだけ多くの過去問を解いて慣れることから始めよう。
 間違った問題については、どうして間違ってしまったのかを必ず確認すること。文章の見落としなのか、知識がなかったのか、勘違いだったのかをはっきりさせることが重要だ。間違った問題に対しては、その解答のヒントが問題文中のどこにあるのかを確認して、なぜそれに気がつかなかったのかを把握することから始めよう。もし知識の穴があった場合には参考書を利用して学習し直そう。
 午後1は、午後2を学習し慣れていくとかなり簡単に感じられるようになる。そのため時間がない人は、午後1の過去問を1周だけ演習し基本的知識を学習した上で午後2に進んでしまうという方法もある。午後2の演習で慣れた頃、もう一度午後1を演習してみて手応えを感じてみる程度でもいいだろう。

step5 午後2対策

 午後2対策も基本的に過去問を解けば大丈夫だが、その前に 情報処理教科書 データベーススペシャリスト の午後2の解答テクニックに関するページを熟読しテクニックを身につけておくこと。これを知っているかどうかで合格する確率はかなり異なってくる。
 午後2も間違った問題に関しては、採点後に必ず見直して確認することが望ましい。問題文中にあるヒントに気がつかなかったのか、知識が無かったのかを確認しておくことが重要だ。間違った問題に関しては、解答をみてその解答を導くためのヒントがどこに書かれているのかを再度確認し、なぜそのヒントに気がつかなかったのかを自分の中で問い直そう。知識がなかったり不確かで間違えてしまった場合には、その知識は修正するようにしよう。
 午後2に関しては慣れるまでこなしていくしかないので、解答ができるまで周回を繰り返して参考書の解説を読んで知識を修正していくようにしよう。

勉強のポイント

出題傾向から勉強分野を絞る

午後1編
 午後1は3問中2問の選択形式だ。これまでは問1と問2が概念設計と論理設計がメインで、問3は性能設計やデータベース運用などがメインだった。しかし、2014年からここ数年ほどクエリの比重が増すとともに問題の傾向もやや変化している。
問1、問2
 これまで問1は基礎理論、問2はデータベース設計に関する問題だったが、2014年からどちらもデータベース設計に関する出題のみになった。
 内容的はさほど変化がなく主に関係従属性、関係スキーマ、ER図、テーブル構造、正規化、候補キーなどを答えさせたりする問題が多いので、基本を抑えていれば特に問題ないだろう。
 ただ一つだけはっきりしているのはクエリに関する出題が増えていることだ。解答にクエリそのものを答えさせる問題もあったり、クエリを読めないと答えられない解答も増えている。
問3
 こちらは従来の物理設計、運用管理、チューニングなどの出題に加え、セキュリティに関する問題が加わることになった。
 また、こちらの問題でもクエリを理解していないと答えられない問題が多く出題されるようになっているのが特徴だ。さらにセキュリティに関する設問が入ってきているのも最近の傾向だろう。
まとめ
 これまでは「基礎理論+設計+性能設計または運用管理」というパターンだったが、2014年からは「設計×2問+性能設計または運用管理またはセキュリティ」というパターンに変化している。
 性能設計、運用管理、セキュリティに関しては苦手な人も多いと思われるため、もし苦手であればデータベース設計に関する問題を2問選択すると決めてしまうのもアリだろう。だが、データベース設計に関する問題が1問しか出題されない年もあったことからリスクがあることだけは理解しておこう。
 またクエリを理解しないと解けない問題が増えていることから、相対的にクエリ学習の重要性は増していると考えられる。今後はクエリについても理解するような学習が必要になるだろう。出題されるクエリの問題は一般的なクエリの問題なので学習の難易度はさほど高くないはずだ。
午後2編
 午後2については以下のようになっている。
問1
 ER図や関係スキーマも問われるが、それだけでなく、ビジネスロジックを理解した上でデータの更新手順を問う問題や、データ抽出方法を問う問題、検索時の最適なクエリを記述させる問題、物理設計や性能設計に関する内容も出題される。
 またここ数年、問1はER図や関係スキーマを問われることのない傾向となっている。具体的には、問題文の最初にER図、関係スキーマをすべて提示した上で各種問題が出題されるようになっている。これは論理設計までを提示した上で物理設計、運用、チューニング、クエリに関する問題を出題する意図があるからなのだろう。今後もこれに近い傾向が続くものと思われる。
問2
 ビジネスプロセスを理解し、概念データモデルやテーブル設計をするデータモデリングを問われる問題で、関係スキーマやER図を答えさせる問題だ。こちらはモデリングだけで物理設計に関するような問題は出題されない。これは最近も例年のパターンと変化がない。
まとめ
 どちらを選択するかは考え方次第だが、モデリングが得意なら問2を、苦手なら問1を選択するのがいいだろう。どちらを選択するか決めてしまえば、他方は学習しなくてもよくなるのでかなりの時短になるので、時間がない人は事前に問題文を読んでみてどちらかを選択するか固定してしまうといいだろう。
 業務経験の無い人の場合、一般的にはモデリングのほうが得意であろうことから、問2を選択すると固定してしまえば、過去問演習の時間も短くなると思うので検討してみるといいと思う。

クエリの学習は必要か?

 かつてはそれほどでもなかったが、最近はSQL(クエリ)やそれに近い内容を答えさせる問題が頻出化している。応用情報のデータベース問題でもクエリを答えさせる問題が毎年でるようになっているので、そのような傾向なのだろう。そのためクエリを学習する重要性はかつてより高まっているということはいえると思う。
 また、ER図や関数従属性を表す図を眺めて理解するより、クエリを実際に記述したほうが、それぞれのテーブルがどのように組み合わさって表示させるのか理論的に理解しやすくなるためクエリを勉強することで、よりデータベースに関する理解が深まることは間違いない。
 従って可能ならばクエリを学習することが望ましい。簡単な関数を思い浮かべる程度には学習しておこう。
 しかし、クエリを勉強するには時間がかかる上に初心者の人にとっては難解であり時間もかかることから、もし学習する時間がないと考えるのであればクエリの学習をパスするという選択肢もアリだ。クエリが記述できなくとも、なんとか60%以上は解答できると思われるので、自分の学習状況や残り時間などを考慮してクエリの学習をするかどうか検討しよう。もちろん業務でクエリを記述した経験のある人は、すでに知識は十分と思われるので学習する必要はないだろう。

出題の傾向は決まっているので慣れが重要

 問題中には過去に何回も問われている問題がある。例えば、正規化、ER図の作成、候補キーを探す問題などである。これらはほとんど例外なく出題されるような問題なので、これを学習することで合格率はかなり上昇すると考えられる。具体的にどのような問題が出題されるかは、 情報処理教科書 データベーススペシャリスト に記述されているので、午後1を始める前には午後1に関する解答テクニック集を、午後2の前には午後2のテクニック集を読んで理解してから始めるようにしよう。はじめは難しいかもしれないが、その理屈や理論みたいなのを理解してしまえば安定的な得点源となるため、確実にものにするようにしよう。

独特の言い回しを意識する

 このあたりも情報処理教科書に記述されているので、具体的に学んで学習していこう。例えば「支社コードは支社によって一意で決まる」と書いてあれば支社テーブルにある支社コードは支社テーブルの候補キーになることを意味する。
 次に「社員コードは支社ごとに一意に決まる」と書いてあるとする。そうすると、社員テーブルは、支社コード、社員コードが候補キーになるのではないかと推測できる。
 このように「候補キー」であることを示す文章はほぼ定型的に記述されているので、それを学習することが重要だ。

独特の言い回しを暗記する

 言い回しにはもう一つある。それは解答時の言い回しだ。
 例えば「第三正規形である理由を述べよ」みたいな問題がよくあるが、解答時の言い回しはほとんど定型で使い回せるものだ。第三正規形ならば「全ての属性が単一値で、候補キーからの部分関数従属がなく候補キーからの推移的関数従属性もないから」などが定型文にあたる。第一正規形~ボイスコッド正規形まで、すべてに定型文があるが、これらは情報処理教科書に記載されているので暗記すること。
 また正規化していないことで発生する問題についても定型文が存在する。例えば第二正規形で終わっているテーブルは「属性○○が重複して登録される」「事前に属性○○を登録しておくことができない」「属性○○の更新時に整合性がとれなくなる」などだ。これも午後1では頻出ワードになるので覚えておくこと。

概念データモデル

 概念データモデルで必須なのはリレーションシップの「矢印」の記述だ。よく出題される内容なのでこれは絶対に間違えないで記述できるようにしておくこと。一般的にはリレーションシップは1対多の設計になっていることがほとんどなのでほとんど片側矢印で対応できると考えていい。矢印の向きはテーブルに主キーを外部キーとして取り込んでいるかどうかで判別できるので、必ず矢印の方向も間違えずに記述できるようにしておこう。
 ただし、まれに1対1のリレーションシップが存在することがあるので、そのあたりだけ気をつけるようにしよう。

サブタイプ

 サブタイプも必ず理解しなければ概念の一つ。結構出題されるのでこれも理解できるようにしておく。
 サブタイプは基本的にマスタ系に使われることが多い。例えば商品があって自社製造商品か仕入れた商品かなどの違いで一部属性が異なるような場合である。
 同じ商品やサービスなのに属性の異なる商品などの説明があるとサブタイプになっている可能性が高いので検討してみよう。

実際にデータベースをインストールして利用してみる

 主に概念データモデリング系の設問のみ選択すればSQLをしらなくても合格できるかもしれないが、やはり確度を高めるためにSQLにある程度、慣れておくことは重要だと思う。最近はSQLに関する出題も多くなっており、計算に関するロジックなどの知識も必要になるケースがあることから勉強して損はない。
 具体的には応用情報技術者試験向けデータベース入門などを参考に自分でSQLを学習してみるといいと思う。

印字する

 午後1と午後2の学習をするにあたって、必ず問題文と解答用紙を印刷しておくようにしよう。この試験の場合、パソコンでPDFを閲覧し解答するのは非常に難しい。なぜなら時間がほんとうに足りないからだ。自分の解答ペースで時間内に間に合うかどうかはPDFではわからない(たぶん間に合わないと思う)。なので印刷し、時計を用意して計測して時間内に解答できるかどうか確かめる必要がある。
 なお、ネットで公開されている解答用紙の一部には、多少問題がある解答用紙が公開されている。答えは4種類なのに2マスしか回答欄がないものが公開されていたりするので、そのあたりだけは気をつけて欲しい。

解答のコツ、解答テクニック

データベーススペシャリスト試験の解答テクニック

容量が大きくなったため別ページにしました。解答時に考えるべきこと。解答の定石パターン。データベースについての考え方などのテクニックを記述しています
データベーススペシャリスト試験の解答テクニック

あると便利な文房具

シャープペン

 シャープペンシルは製図用のシャープペンと、好みのシャープペンの2種類をもっていくことが望ましい。またシャープペンシルの芯もBとHBなどというように二種類持っていったほうがいいと思う。
 シャープペンは0.5mmで問題ない。最近のシャープペンは自動繰り出し式だったり、回転式だったりして定規で線を引くのが苦手な製品も多い。製図用のシャープペンはペン先で数mm飛び出しており定規で線を引くのがしやすい。またIPAの試験は午前と午後で紙質がかなり違うので、同じシャープペンの芯だと堅すぎたり柔らかすぎたり好みに合わないことがある。そのため、堅さの違う芯を2種類もっていくと対処がしやすい。

テンプレート定規

 テンプレート定規とは、簡単に四角形や円を記述できる定規の総称だ。文房具屋などで販売されている。
 この定規のメリットは、簡単に直角や四角形を描けることだ。例えば概念データモデリングなどで線を引くことがあるが、このとき直角に曲がる線や四角形を書かなければならないことがある。普通の定規だと上下左右の線を4回定規を動かし記述する必要があるが、四角形を書けるテンプレート定規だと、左上の角、右下の角のように2回動かすだけ四角形を記述できるので非常に楽だ。
 またテンプレート定規は薄いものなら、消したい場所の上に定規の穴をあてて、その上から消しゴムで消すことで特定範囲だけをまるごと消せるという使い方もできる。

ノック式消しゴム

 この試験では図形を記述することがあるので、ほんとうに少しだけ、細かな場所を消したくなる場合がある。例えば直線を少し長く書きすぎて、他の線と重なってしまったというような場合だ。このとき普通の消しゴムだと消える範囲が広すぎて、全体をけしてから再度消してしまった場所を上書きするなど面倒になってしまうことがある。
 そこで便利なのがノック式の消しゴムだ。これなら数mmの場所でもらくらく消せるので余分な場所を消してしまう心配がない。ただし、広い範囲をまとめて消すには不向きなので普通の消しゴムも必ず持っていくようにしよう。

コメント

名前:
コメント:

2017年04月28日 (金) 22時42分20秒
&trackback