DatabaseSpecification » 履歴 » バージョン 9
MIYAZAKI Masafumi, 2016/05/04 01:02
1 | 1 | MIYAZAKI Masafumi | h1. データベース仕様 |
---|---|---|---|
2 | 1 | MIYAZAKI Masafumi | |
3 | 2 | MIYAZAKI Masafumi | SQLiteにて下記のデータベースを定義し、PHPから利用します。 |
4 | 1 | MIYAZAKI Masafumi | |
5 | 2 | MIYAZAKI Masafumi | {{>toc}} |
6 | 2 | MIYAZAKI Masafumi | |
7 | 2 | MIYAZAKI Masafumi | ---- |
8 | 2 | MIYAZAKI Masafumi | |
9 | 2 | MIYAZAKI Masafumi | h2. WhiskyExaminationデータベース |
10 | 2 | MIYAZAKI Masafumi | |
11 | 2 | MIYAZAKI Masafumi | h3. Questionテーブル |
12 | 2 | MIYAZAKI Masafumi | |
13 | 2 | MIYAZAKI Masafumi | 問題集に相当するテーブル。 |
14 | 2 | MIYAZAKI Masafumi | |
15 | 1 | MIYAZAKI Masafumi | | 列名 | 型 | 属性 | 説明 | |
16 | 1 | MIYAZAKI Masafumi | | id | 整数 | serial | 問題の識別子 | |
17 | 1 | MIYAZAKI Masafumi | | question | 文字列 | | 問題文 | |
18 | 1 | MIYAZAKI Masafumi | | correct | 文字列 | | 正解となる選択肢群。JSONの配列形式。ex) ["answer1", "answer2", "answer3"] | |
19 | 1 | MIYAZAKI Masafumi | | incorrect | 文字列 | | 不正解となる選択肢群。JSONの配列形式。ex) ["answer1", "answer2", "answer3"] | |
20 | 2 | MIYAZAKI Masafumi | |
21 | 2 | MIYAZAKI Masafumi | h3. Accountテーブル |
22 | 2 | MIYAZAKI Masafumi | |
23 | 3 | MIYAZAKI Masafumi | ユーザごとの認証情報を記録するテーブル。 |
24 | 3 | MIYAZAKI Masafumi | |
25 | 3 | MIYAZAKI Masafumi | | 列名 | 型 | 属性 | 説明 | |
26 | 3 | MIYAZAKI Masafumi | | sid | 整数 | serial | アカウントの内部的識別子。 | |
27 | 3 | MIYAZAKI Masafumi | | id | 文字列 | unique | アカウントの識別子。ユーザが指定する任意の文字列。ex. g0947424 | |
28 | 3 | MIYAZAKI Masafumi | | hash | 文字列 | | パスワードのハッシュ値。 | |
29 | 3 | MIYAZAKI Masafumi | | firstname | 文字列 | | ユーザの名前。ex. 太郎 | |
30 | 3 | MIYAZAKI Masafumi | | lastname | 文字列 | | ユーザの苗字。ex. 山田 | |
31 | 3 | MIYAZAKI Masafumi | | permission | 文字列 | | ユーザの権限種別。「normal」「admin」 | |
32 | 3 | MIYAZAKI Masafumi | | memo | 文字列 | | 備考欄 | |
33 | 3 | MIYAZAKI Masafumi | |
34 | 4 | aoki yuji | --- |
35 | 4 | aoki yuji | |
36 | 7 | aoki yuji | h3. Trendテーブル |
37 | 8 | aoki yuji | |
38 | 7 | aoki yuji | ユーザ数×問題数のレコードを持つテーブル(傾向管理) |
39 | 4 | aoki yuji | |
40 | 1 | MIYAZAKI Masafumi | | 列名 | 型 | 属性 | 説明 | |
41 | 8 | aoki yuji | | sid | 整数 | serial | 本テーブルのシリアルID。システムが一意に払い出す値。ユーザと問題の総当たり数だけ生成される。 | |
42 | 8 | aoki yuji | | user_sid | 整数 | | ユーザのSID。ユーザの識別子 | |
43 | 8 | aoki yuji | | question_id | 整数 | | 問題のID。問題の識別子 | |
44 | 8 | aoki yuji | | correct_times | 整数 | | 正答回数。ユーザが問題を正答した回数 | |
45 | 8 | aoki yuji | | incorrect_times | 整数 | | 誤答回数。ユーザが問題を誤答した回数 | |
46 | 8 | aoki yuji | | rank | 整数 | | ランク。ランクは問題抽出アルゴリズムに従い随時更新される | |
47 | 1 | MIYAZAKI Masafumi | |
48 | 1 | MIYAZAKI Masafumi | h3. Historyテーブル |
49 | 8 | aoki yuji | |
50 | 1 | MIYAZAKI Masafumi | 問題が1回解答されたら1レコード生成するテーブル(履歴管理) |
51 | 1 | MIYAZAKI Masafumi | |
52 | 1 | MIYAZAKI Masafumi | | 列名 | 型 | 属性 | 説明 | |
53 | 8 | aoki yuji | | sid | 整数 | serial | 本テーブルのシリアルID。システムが一意に払い出す値。問題が1回解答されたら1つ値を払い出す。連番を想定。 | |
54 | 8 | aoki yuji | | user_sid | 整数 | | ユーザのSID。ユーザのユーザの識別子 | |
55 | 8 | aoki yuji | | date | 文字列 | | 問題が解答された日付 | |
56 | 8 | aoki yuji | | question_id | 整数 | | 問題のID。問題の識別子 | |
57 | 8 | aoki yuji | | true_or_false | 整数 | | 正誤。正答の場合:1 誤答の場合:0 | |
58 | 4 | aoki yuji | |
59 | 4 | aoki yuji | |
60 | 8 | aoki yuji | h3. 問題抽出アルゴリズム |
61 | 8 | aoki yuji | |
62 | 8 | aoki yuji | →問題抽出個数に従い出題問題候補リストを生成する |
63 | 8 | aoki yuji | リストをシャッフルし1番最初の問題を取り出し出題する。 |
64 | 8 | aoki yuji | |
65 | 4 | aoki yuji | | 列名 | 型 | 属性 | 説明 | |
66 | 4 | aoki yuji | | ランク | 正答率(%) | 出題率(%) | 問題抽出個数(コ) | |
67 | 4 | aoki yuji | | 5 | 100-81 | 10 | 1 | |
68 | 4 | aoki yuji | | 4 | 80-61 | 30 | 3 | |
69 | 4 | aoki yuji | | 3 | 60-41 | 50 | 5 | |
70 | 4 | aoki yuji | | 2 | 40-21 | 70 | 7 | |
71 | 4 | aoki yuji | | 1 | 20-0 | 90 | 9 | |