私はオンラインWebサイトを開発しています(DjangoとMysqlを使用しています)。私はテストテーブルとユーザーテーブルを持っています。データベースに保存する正しい方法
私はテーブル内で50回のテストを行い、各ユーザーはそれぞれのペースでテストを完了します。 テストのステータスをデータベースに保存するにはどうすればよいですか?
私の頭に浮かべた1つのアイデアは、Userテーブルに追加の列を作成することです。 testidを含むその列はカンマまたは他の区切り文字で区切られます。
userid | username | testscompleted 1 john 1, 5, 34 2 tom 1, 10, 23, 25
もう1つのアイデアは、useridとtestidを格納する別個のテーブルを作成することでした。だから、私はわずか2列しかないが何千もの行を持つだろう(テストはない*ユーザーはいない)、彼らは常に増加し続けるだろう。
userid | testid 1 1 1 5 2 1 1 34 2 10
ですが、テーブルのサイズが大きくなる原因になります。公開サイトであり、すべてのユーザー(たとえば10000)が最終的にテストを完了すると仮定すると、10000×50行が存在します。 – John
@ジョン50万行は多くのように思えますが、それでもデータベース標準では非常に小さなテーブルです。各行が3つのint列で構成されているとします。それは1行あたり12バイトです。 12バイト* 500k行は* 5.7MB *です。 –
@ John:テーブルは、役に立つデータを入れると成長すると考えられています。 –