リレーショナルデータベースの実践的基礎 (改訂版)

リレーショナルデータベースの実践的基礎 (改訂版)

  • 速水 治夫 神奈川工科大名誉教授 博士(工学)

MySQLを用いた豊富な実行例で,初学者でもリレーショナルデータベースを直感的に理解

ジャンル
発行年月日
2020/10/15
判型
B5
ページ数
160ページ
ISBN
978-4-339-02914-7
リレーショナルデータベースの実践的基礎 (改訂版)
在庫あり

定価

2,750(本体2,500円+税)

カートに入れる

電子版を購入

電子版を購入

購入案内

  • 内容紹介
  • まえがき
  • 目次
  • レビュー
  • 著者紹介
  • 書籍紹介・書評掲載情報
  • 広告掲載情報

【本書の用途】
本書はデータベースを初めて学ぶ人の入門書です.高等専門学校・大学の情報系学生向けの教科書として,および企業でリレーショナルデータベース(RDB)を用いたシステムの開発を目指している技術者向けの入門書として読まれることを想定しています.

【本書の特徴】
本書はデータベースがなぜ必要なのかを理解し,RDBを実践的に使用できる実力が備わる内容になっています.データベースの専門書の著者として有名なC.J.デイトの言葉を借りれば「ユーザが知らなくてもよいデータベース管理システムの実装」の記述より,「ユーザが知らなければならないモデル」の記述に多くのページを割いているのが特徴です.

記述にあたっては,最初に直感的な例を用いて解説し,次に定義などで厳密な説明を行っています.そのため,最初に読むときは,厳密な説明は読み飛ばしても大丈夫になっています.そして2回目に読むときに,定義などをしっかり読めば理解がより深まるようになっています.豊富な実行例をあげていますのでRDBを実際に使いこなすことが可能になります.特に本書の中心である標準RDB言語SQLの説明においては,人気のあるオープンソースのMySQLで例題データベースを実行した結果を豊富に示しています.その例題データベースの構築文を付録に付けていますので,読者自身で例題データベースを構築し,SQL文を実行確認することが容易になっています.

【各章について】
第1章では,データベースが導入された考え方を学び,次にデータモデル,データベース管理システムの概要を学びます.最後にデータベースの適用分野の一例としてWebデータベースの概要を学びます.
第2章では,RDBの基礎として,リレーショナルモデル,リレーショナル代数を詳しく学びます.
第3章では,データベース設計に関し,ERモデルを使用した概念設計とリレーショナルモデルを使用した論理設計とを学びます.
第4章では,SQLを学びます.特に,問合せについては詳しく学びます.MySQLを用いた実行例が豊富に示されています.説明がやや煩雑になるため,類書では記述が避けられがちな副問合せや商演算について,例を用いて懇切に記述されているのも特徴の一つです.

【著者からのメッセージ】
著者は卒業研究の指導を20年続けました.その当初,卒業研究でデータベースを使用したシステムを構築する学生の多くが,データベース設計をしっかりやらないでプログラムを書き始めてしまったり,SQLで書けば簡単な問合せもプログラムで無理矢理実行したりしていました.このことから,システム構築に役立つデータベース設計とSQLの実力が付くような講義をしなければならないと感じ,その教科書として本書の初版を上梓しました.本書を用いた講義を受講した学生が研究室へ入ってくるようになり,前記のような学生が減ってきたので,本書執筆の狙いが正しかったと感じることができました.そして,今回の改版では,講義のなかで学生にとって解りづらいと感じていた点を中心に加筆修正しましたので,より解りやすい実践的な入門書となったと思います.

初版第10刷(改訂版)にあたって

本書の初版を発行してから12年が経過し,この間,多くの大学,高等専門学校などで教科書としてご採用を頂き,また多くの方に入門書としてお読み頂き,刷りを重ねることができた.情報分野の多くの学生の基礎科目としてのデータベースの重要性に鑑み,できる限り平易な記述に努めたことにご理解頂けたと感謝している.

刷りを重ねるたびに可能な範囲で説明の小規模な修正・追加を行ってきたが,著者自身が本教科書を使用した講義を続けるなかで,大幅な修正を行うことにより,さらにわかりやすくなると感じていたところ,出版社からの計らいもあり,改訂の機会を得た.

今回の改訂版では学生にとってわかりづらいと感じていた点を中心に修正した.特に,SQLの「外への参照のある副問合せ」に関しては大幅な修正を行ったので理解しやすくなったと思う.

また,本書でSQLの実行例を示すために使用しているMySQLは,バージョンが上がり,外部キーの指定が可能となった.これらを使用して整合性制約に関する実行例を追加した.これにより2章のリレーショナルモデルで整合性制約の重要性を説明していたが,4章のSQLで実行例を示せていなかったことが解消できて入門書としての完備性が増したと感じている.

2020年8月
速水治夫
初版第10刷(改訂版)にあたって


まえがき

本書は,データベースを初めて学ぶ人の入門書として書かれている.大学の学部レベルの情報系学生向けの教科書として,およびリレーショナルデータベースを用いたシステムを開発しようとしている企業の技術者向けの技術書として読まれることを想定している.

データベースがなぜ必要なのかを理解し,リレーショナルデータベースを実践的に使用できる実力が備わる内容になっている.データベースの教科書の著者として有名なC.J.デイトの言葉を借りれば「ユーザが知らなくてもよい実装」の記述より,「ユーザが知らなければならないモデル」の記述に多くのページを割いているのが本書の特徴である.

記述にあたっては,最初に直観的な例を用いて解説し,つぎに【定義】などで厳密な説明を行っている.最初に読むときは,厳密な説明は読み飛ばしても大丈夫になっている.2回目に読むときに,定義などをしっかり読めば理解がより深まる.必要な箇所には,豊富な記述例を挙げているのでリレーショナルデータベースを実際に使いこなすことが可能になる.

1章では,データベースが導入された考え方を学び,つぎにデータモデル,データベース管理システムの概要を学ぶ.最後にデータベースの適用分野として,最近脚光をあびているWebデータベースの概要を学ぶ.2章では,リレーショナルデータベースの基礎として,リレーショナルモデル,リレーショナル代数を詳しく学ぶ.3章では,データベース設計に関し,ERモデルを使用した概念設計とリレーショナルモデルを使用した論理設計とを学ぶ.4章では,標準リレーショナルデータベース言語SQLを学ぶ.特に,問合せについては詳しく学ぶ.人気のあるオープンソースのDBMSであるMySQLを用いた実行例を豊富に示している.

姉妹編の「Webデータベースの構築技術」とあわせて読めば,自分でWebデータベースを構築することが可能となる.

2008年10月
速水治夫

1.データベースの基礎
1.1 データベースとは
1.2 データモデル
1.3 データモデルの歴史
1.4 3層スキーマアーキテクチャ
1.5 データベース管理システム
1.6 Webデータベース
 1.6.1 Webサーバによる情報提供方法の分類
 1.6.2 Webアプリケーション
 1.6.3 Webデータベース

2.リレーショナルデータベースの基礎
2.1 リレーショナルモデルの特徴
2.2 リレーショナルモデルのデータ構造
 2.2.1 表とリレーション
 2.2.2 構成要素
 2.2.3 リレーションスキーマ
 2.2.4 リレーションの表現
 2.2.5 リレーションの条件
2.3 リレーショナルモデルの整合性制約
 2.3.1 概要
 2.3.2 例題データベース
 2.3.3 整合性制約の説明に必要な概念
 2.3.4 整合性制約
2.4 リレーショナルモデルのデータ操作
2.5 リレーショナル代数
 2.5.1 概要
 2.5.2 演算可能な条件
 2.5.3 リレーショナル代数
 2.5.4 リレーショナル代数表現

3.データベース設計
3.1 概要
3.2 第1のアプローチによる設計
 3.2.1 実体関連モデル
 3.2.2 概念モデルの設計
 3.2.3 論理モデルの設計
3.3 第2のアプローチによる設計
 3.3.1 情報の整理
 3.3.2 正規化
 3.3.3 情報無損失分解
 3.3.4 高位の正規形
 3.3.5 正規化のまとめ

4.リレーショナルデータベース言語SQL
4.1 概要
4.2 データ定義
4.3 インポート
4.4 問合せ
 4.4.1 基本構文
 4.4.2 探索条件
 4.4.3 便利な機能
 4.4.4 集合関数とグループ化
 4.4.5 結合演算
 4.4.6 集合演算
 4.4.7 副問合せ
 4.4.8 商演算の多角的活用
 4.4.9 問合せのまとめ
4.5 データ更新
 4.5.1 挿入
 4.5.2 変更
 4.5.3 削除
 4.5.4 整合性制約違反となる更新
4.6 ビュー
 4.6.1 ビューの定義と利用
 4.6.2 ビューに対する更新操作
 4.6.3 注意が必要なビューに対する更新操作
 4.6.4 ビューの効果
参考文献
あとがき
付録
索引

コラム
 データを表形式で表現するって革新的だったの?
 ナルはnotany
 商演算の活用例
 大文字・小文字・日本語
 ナルの入力
 商演算におけるリレーショナル代数の定義とSQLの記述

【書評】駒澤大学 グローバル・メディア・スタディーズ学部 グローバル・メディア学科 服部 哲 教授

 大学教育での経験豊かな著者が、その経験から得た知見を踏まえて大幅に改訂した本書は、リレーショナルデータベースの基礎から応用まで丁寧かつ豊富な記述例に基づいて解説している。本書は全体を通して、対象読者に馴染みのある例を用いている。
 第1章は、データベースの導入となっており、必要性と基本用語が丁寧に解説されている
 第2章は、リレーショナルデータベースの基礎となっており、基本的な概念が導入される。リレーショナル代数については、非常に詳細の解説されている。データベース初学者にとっては敷居が高い高度な内容と思われるが、対象読者を考えれば、その理解は実践的にデータベースを用いたアプリケーションの開発に有益であろう。前見返しに本書で用いる例題データベースが記載されているため、参照しやすい。
 第3章は、リレーショナルデータベースの設計として、2つのアプローチが解説されている。どちらも論理設計のアプローチである。テーブルの正規化は、データベースの善し悪し左右し、それはアプリケーションの使い勝手に影響する。この正規化のポイントを丁寧な説明文に加え、図解によって示しており、視覚的に表現している。
 第4章は、本書で最もページ数を割いており、問合せ機能を中心に、リレーショナルデータベース言語SQLが解説されている。SQLのすべての説明において、記述例と実行例が示されているため、データベース初学者は実際にSQLを実行し、確認しながら理解を深められる内容になっている。商演算など難易度の高いものについては必要に応じて使ってみるなど、本章はそれぞれの読者レベルに応じた利用方法が可能であろう。
 読者には、実際にアプリケーション作成を試みることによって、本書のタイトル「実践的基礎」に込められた意図を感じ取ってもらいたい。

速水 治夫

速水 治夫(ハヤミ ハルオ)

 大学院修士課程を修了後,電電公社(その後NTT)の研究所に26年間勤めました.この間,電電公社がサービスを開始したデータ通信に使用するコンピュータや,そこで必要となるデータベース処理の高速化を狙ったデータベース処理専用プロセッサの実用化研究に従事しました.中でも,全国銀行協会の全国銀行データ通信システムなどのナショナルプロジェクトに参加できたのは良い思い出です.その後,データベースを応用したグループウェア,ワークフローシステムの研究に従事しました.この間,一貫して注力したことはユーザの要求・要望をしっかり汲み取ってシステムに反映することでした.
 その傍らデータベース処理の高速化に関する博士論文を纏めて工学博士となり大学教授への準備もできました.
 そして50歳で大学教授に転職しました.大学では前職の経験を活かして,論理回路,データベース,グループウェアなどの講義を担当しました.これらに活用するため,12冊の教科書・解説書を複数の出版社から上梓することもできました.
 データベース,グループウェア,Webシステムなどに関する卒業研究・修士研究・博士研究の指導を行いました.その研究スタイルは,学生自身が実世界(普段の生活)で不便に感じていること,あったら良いなと感じることを問題点として整理し,その問題解決に情報処理技術を駆使したシステムを構築し,実際に動作させて問題点を解決できたかを評価するという「問題発見・解決型の研究」でした.研究ゼミで学生が発見した問題点を発表するとき,当初は適切に言語化できない場合が多々ありました.著者は企業時代にユーザの適切に言語化されていない要望をくみ取った経験を活かして,学生自身が自分の発見した問題点を適切に言語化できるように指導しました.これによって,システム開発の狙いが明確となっていきました.中には情報処理学会の有力な研究会で発表し表彰を受けるほどの成果に結びついた研究も幾つかありました.
 また,前職の後半より続けた研究活動により情報処理学会フェローに選定頂いております.

旧版時:「シミュレーション」(日本シミュレーション学会) 2014年3月号 掲載日:2014/03/15
上記学会誌に筑波大学・佐藤哲司先生による書評が掲載されました。

掲載日:2020/11/16

情報処理学会誌「情報処理」2020年12月号広告

掲載日:2020/10/01

「電子情報通信学会誌」2020年10月号広告

本書姉妹編の内容梗概と特徴

( 1 ) 『Web データベースの構築技術

 本書では,写真やイラストなどのマルチメディアデータをWeb ブラウザから登録
したり検索したりするWeb データベースを実際に構築しながら,そのために必要な
技術を学ぶ.具体的には,オープンソースで自由に使えるApache,MySQL,PHP を
利用して,一連のWeb データベースプログラミングを基礎から学ぶ.また,画像処
理やセッション管理など高度な内容も扱う.これらにより,マルチメディアデータを
扱うWeb データベースを独自に設計・開発するスキルの習得が可能である.

( 2 ) 『データベースの実装とシステム運用管理

 データベースシステム開発において,論理設計以降で重要となる「データベースの
実装・テスト」および「データベースシステムの運用管理」を重点的に学ぶことがで
きる.高度な内容であるが,具体例を交えてわかりやすく記述しているので,初心者
でも十分理解することができる.

【特徴】

 本書と( 2 )をあわせて学ぶことによって,「情報処理技術者試験」の「データ
ベーススペシャリスト試験(DB)」の出題範囲を理解することができる.