ホームページ >データベース >mysql チュートリアル >オンライン検査システムのデータベース設計における 4 つの主要なテーブル
オンライン試験システムのデータベース設計における 4 つの主要なテーブルには、特定のコード例が必要です
オンライン試験システムのデータベースを設計するときは、次のことを考慮する必要があります。ユーザーとテストの問題、試験とスコア、その他のさまざまなデータ テーブル。これら 4 つのキー テーブルの構造とコード例については、以下で詳しく説明します。
ユーザー テーブルには、ユーザー名、パスワード、名前、性別、年齢、連絡先情報などが含まれるすべての登録ユーザー情報が保存されます。田畑 。ユーザー テーブルのコード例を次に示します。
CREATE TABLE users ( user_id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) UNIQUE NOT NULL, password VARCHAR(255) NOT NULL, name VARCHAR(100) NOT NULL, gender VARCHAR(10), age INT, contact VARCHAR(100) );
質問テーブルは、テスト問題、オプション、正解とその他のフィールド。以下は、テスト問題テーブルのコード例です。
CREATE TABLE questions ( question_id INT PRIMARY KEY AUTO_INCREMENT, exam_id INT, question_text TEXT NOT NULL, option_a VARCHAR(255) NOT NULL, option_b VARCHAR(255) NOT NULL, option_c VARCHAR(255) NOT NULL, option_d VARCHAR(255) NOT NULL, answer CHAR(1) NOT NULL, FOREIGN KEY (exam_id) REFERENCES exams(exam_id) );
試験テーブルは、試験名、試験時間を含むすべての試験情報を保存するために使用されます。 , 試験期間などのフィールド。以下は、試験テーブルのコード例です。
CREATE TABLE exams ( exam_id INT PRIMARY KEY AUTO_INCREMENT, exam_name VARCHAR(100) NOT NULL, exam_date DATETIME NOT NULL, duration INT NOT NULL );
スコア テーブルは、試験を受けた後の各ユーザーのスコア情報を保存するために使用されます。ユーザー ID、テスト ID、スコア、その他のフィールドが含まれます。以下はスコア テーブルのコード例です。
CREATE TABLE scores ( score_id INT PRIMARY KEY AUTO_INCREMENT, user_id INT, exam_id INT, score INT, FOREIGN KEY (user_id) REFERENCES users(user_id), FOREIGN KEY (exam_id) REFERENCES exams(exam_id) );
上記は、オンライン試験システムのデータベース設計におけるキー テーブルの例です。特定のニーズに応じて、システムの機能要件とパフォーマンス要件を満たすために、これらの基本テーブルに基づいてテーブルを拡張および変更できます。同時に、クエリの効率とデータの整合性を向上させるために、正しい外部キーの関連付けとインデックスの確立にも注意を払う必要があります。
注: 上記のコード例は一般的な設計であり、特定のデータベースとテーブル構造の設計は、システム要件と開発者の特定の実装方法によって異なります。
以上がオンライン検査システムのデータベース設計における 4 つの主要なテーブルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。