はじめに
本連載では、PHPまたはプログラミング初心者の方を対象に、PHPを用いたWebアプリケーションの作成方法を説明していきます。今回は、データベースとSQLに関して、「おすすめレストラン一覧を閲覧できるWebサイトを制作する場合」を例にして、説明をしていきます。
対象読者
- プログラミングが初めてでこれから学習する予定の方
- プログラミングの経験はあるがPHPを初めて学習する方
この記事の内容
- はじめに
- 対象読者
- 動作確認環境
- データベースとは何か・・・データベースはどんな役割?
- データベース操作の基礎・・・データベース言語「SQL」とは
- SQL基礎:テーブルの作成・・・CREATE文を使ってみましょう
- SQL基礎:レコード追加・・・INSERT文を使ってみましょう
- SQL基礎:レコード検索・・・SELECT文を使ってみましょう
- SQL基礎:レコード更新・・・UPDATE文を使ってみましょう
- SQL基礎:レコード削除・・・DELETE文を使ってみましょう
- まとめ
- 参考文献
過去の連載はこちらを参照ください。
動作確認環境
PHPが動作する環境が必要となります。以下に、今回のアプリケーション作成/動作確認に用いた環境を示します(インストールにあたっては最新安定版の使用を推奨します)。
- Windows XP SP3
- PHP 5.2.6
- Apache 2.2.9
- MySQL5.0.67
- phpMyAdmin2.11.9.2
また、上記のサーバ環境を一括でインストールできるパッケージ「XAMPP」がありますので、こちらもご活用ください。XAMPPのインストール方法やPHPの環境構築に関しては第2回を参照ください。
データベースとは何か
もしも皆さんがおすすめレストランの一覧を閲覧できるWebサイトを制作するとしたら、どのように作りますか?
レストランの数が10店舗程度であればプログラムを使うことなく、HTMLで直接、10店舗分のレストランを記述すれば実現できそうです。しかし、3,000店舗の情報を扱うようなサイトであれば、HTMLの分量もかなりのものになります。店が入れ替わる度にメンテナンスを行うのも大変そうです。また、ちょっとしたデザインの変更を行う際にも、3,000店舗分のデザインをすべて変更しなければなりません。
そのような時は、店舗情報のデータだけをHTMLとは切り離した別領域で管理し、PHPを使って読み込んだ店舗データを3,000回ループして表示するように設計すれば、管理が楽になります。
ここで言う店舗情報のようなさまざまな情報を格納するデータの集合体を「データベース」と呼びます。
データベースの具体的なイメージとしては「高機能なEXCEL」のようなものだと思ってください。Webアプリケーションを始めとする多くのシステムでは、データベースを使って情報を管理しています。例えば、レストラン店舗情報を管理するデータベースは次のような構造をしています。
上図のような、表全体のことを「テーブル」と呼びます。また、「店舗No」「住所」「店名」等の縦の列を「カラム」と呼び、横の行のことを「レコード」と呼びます。『店舗テーブルの2番目のレコードの住所カラムは“高円寺”である』といった使い方をします。これらの言葉は、今後の説明で頻繁に登場するので、まずはしっかりとそれぞれが何を意味するのか、理解しておいてください。
データベースを使うことで障害に強く、不整合の無い情報管理が実現できます。本連載では、XAMPPに同梱されており、最もメジャーなデータベースの1つでもある「MySQL」を用います。その他のデータベースの種類としては、PostgreSQL、Oracle、SQLiteなどがあります。
次のページ:【データベース操作の基礎】へ→ |