1

データベース内の他のテーブルにメタデータを保存することについて混乱しています。

ユーザーがデータを挿入できる目標、コメントなどのテーブルがあります。そして、これらの各テーブルの説明と、テーブルごとに1人あたり何行挿入できるかを保存する必要があります。

例えば、

goals -> a description field, a count field
comments-> description field only
rating -> description field, weight field

私の疑問は、そのような場合、そのようなすべての情報を格納する中央テーブルを保持する方がよいのではないかということです(正規化を考えずに)。または、comment_settings、goal_settings、rating_settings など、テーブルごとに個別のメタ テーブルを作成しますか?

私はcakePHPでこれをやっています。私は純粋主義者になりたくありませんが、MVC パラダイムを台無しにしたり、正規化を行わずにパフォーマンスを台無しにしたりするのは気分が悪いです。お知らせ下さい。

4

1 に答える 1

0

テキストフィールドに挿入する前に、いつでもJSONを使用してデータを文字列にエンコードできます。これには大きな柔軟性の利点がありますが、値にインデックスを付けることができるなど、おそらく同じくらい多くの便利な意味があります。

http://www.mysqludf.org/lib_mysqludf_json/index.phpのようなものを使用することで、いくつかのJSONの問題を克服できる可能性があります。

ただし、遊びをして、ニーズに最適なものを確認する必要があります。

個人的に私は好きです:

Variable varchar(20), Value varchar(255)-たとえば、データ構造のタイプ:

Variable : GoalsDesc1
Value    : This is a description of a goal
Variable : GoalsCount1
Value    : 2


Variable : Comments1
Value    : This is a comment field
于 2012-08-14T07:56:37.223 に答える