PHPプログラミング

最終更新日:
公開日:

ワークショップ

ひと言掲示板を作る(10)

掲示板のデータベースとテーブルを作成する

「ひと言掲示板」の投稿データが入る「データベース」と「テーブル」をphpMyAdminから作成します。

この記事のポイント

  • phpMyAdminでデータベースやテーブルを作成する
  • データベースは自動連番を割り振る機能がある

目次

phpMyAdminでデータベースを作成する

前回はphpMyAdminをインストールして、MariaDBを使う準備を整えました。
今回は掲示板の「データベース」と、投稿データが入る「テーブル」を作成していきます。

データベースとテーブルの関係は次のようなイメージになり、テーブルの中に実際の投稿データが格納されていきます。
今回作成するデータベース名は「board」、テーブル名は「message」としましょう。

データベースとテーブルの関係のイメージ

「ひと言掲示板を作る」の概要については「ひと言掲示板を作る」をご覧ください。
デモはこちら

前回までに作成したコードはこちら:Github

データベースを作成する

まずは掲示板のデータベース「board」を作成しましょう。
phpMyAdminにログインし、「データベース」タブを押してください。

データベースをクリック

データベースを作成するページが開きます。
次のようにデータベース名を「board」と入力し、作成ボタンを押してください。
データベースの文字コードが「utf8mb4_general_ci」となっていますが、こちらは変更せずそのままで大丈夫です。

データベースの作成ページ

Note

データベースの文字コードはご利用の環境によって別のものになっているかもしれません。
その時は「utf8mb4_general_ci」に変更するか、この文字コードが選択肢に無ければ「utf8_unicode_ci」を選択してください。

データベースが無事作成されると、左側の一覧に「board」が表示されます。

作成したデータベースが一覧に表示される

以上で掲示板のデータベースを作成することができました。
続いて、このデータベースに投稿されたデータが入る「message」テーブルを作成していきましょう。

テーブルを作成する

「テーブル」はデータが入る器です。
どのような形式でデータが登録されるか、このテーブルであらかじめ「定義」しておく必要があります。

テーブルの定義にはどのようなデータを扱うかを考える必要があります。
そこで、今までデータを書き込んでいた「message.txt」を確認してみましょう。

message.txtに書き込まれたデータ例

'Emily','掲示板に書き込んでみる','2019-03-20 23:22:47'

データは「表示名」「メッセージ」「投稿日時」の3種類でした。
テーブルにもこの3つがあれば大丈夫そうです。
さらに今回はデータベースの機能を使って、データに自動的な連番を割り振る「id」も加えていきます。

ここまでの要件をまとめると、今回作成するテーブルは次のようになります。

カラム名データの型属性内容
idint主キー、AUTO_INCREMENTデータを一意に特定するID
view_namevarchar(100)表示名
messagetextひと言メッセージ
post_datedatetime投稿日時

id」の属性にある「AUTO_INCREMENT」はデータが登録される度に加算される整数を指定しています。
データが登録される度に「123、….999910000」と増えていきます。
id」は主キーになるため、他のデータと値が重複することもありません。

view_name」の型にある「varchar」は文字数に制限がある文字列です。
ここでは100文字の長さとします。

テーブルでは取り扱うデータをそれぞれ「カラム」と呼びます。
今回のテーブルでは4カラム分の定義を行う必要がありそうです。

ここまでに考えてきた定義内容から、実際にテーブルを作成していきましょう。
phpMyAdminの左側にある「board」をクリックすると、「テーブルを作成」ページが開きます。
名前に「message」と入力し、実行ボタンを押してください。

テーブル作成ページ

続いて、カラムを個別に入力していきます。
先に「名前」と「データ型」を全て入力しておくと楽です。

id」のAUTO_INCREMENTは、右側にある「AI」にチェックを入れると設定することができます。
チェックを入れると「インデックス追加」のポップアップウインドウが表示されるかもしれませんが、そのまま「OK」ボタンを押してください。
これでAUTO_INCREMENTに加えて、主キーの指定も完了します。

view_name」については100文字の制限を設けるため「長さ/値」に「100」と入力してください。
また、このカラムと「message」は日本語のデータが入るため「照合順序」を「utf8mb4_general_ci」を選択してください。

カラムの入力が終わったら、下部にある「Collation」の文字コードも「utf8mb4_general_ci」を選択します。

最後に右下にある「保存する」ボタンを押すと、テーブル作成されます。

テーブル作成の入力例

テーブルが無事作成されると、phpMyAdminの左側のデータベース「board」内に、作成した「message」テーブルが追加されます。
こちらをクリックすると、作成したテーブルの構造を確認することができます。

テーブルが新しく追加される

今回はここまでです。
次回からは、作成したテーブルに投稿データを登録していきます。

こちらの記事は役に立ちましたか?

ありがとうございます。
もしよろしければ、あわせてフィードバックや要望などをご入力ください。

コメントありがとうございます!
運営の参考にさせていただきます。