データベース構造


データベース名は challenge とします。文字コードは日本語ファイル名やコメントを扱えるように utf8mb4 を使用します。

schema.sql

-- Chapter5で使用するデータベース例
CREATE DATABASE IF NOT EXISTS challenge DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE challenge;

CREATE TABLE IF NOT EXISTS member (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  pass_word VARCHAR(255) NOT NULL,
  mail VARCHAR(255) NOT NULL UNIQUE
);

CREATE TABLE IF NOT EXISTS learning (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(255) NOT NULL,
  file VARCHAR(255) NOT NULL,
  change_name VARCHAR(255) NOT NULL,
  modified DATETIME NOT NULL
);

CREATE TABLE IF NOT EXISTS task (
  id INT AUTO_INCREMENT PRIMARY KEY,
  member INT NOT NULL,
  name VARCHAR(255) NOT NULL,
  file VARCHAR(255) NOT NULL,
  change_name VARCHAR(255) NOT NULL,
  word TEXT,
  modified DATETIME NOT NULL,
  FOREIGN KEY (member) REFERENCES member(id)
);

パスワードは平文ではなく,password_hash() でハッシュ化して保存します。そのため member.pass_wordVARCHAR(255) としておきます。


Copyright (c) 2014-2026 T.Kouya Laboratory @ Otemon Gakuin University. All rights reserved.