2016-09-25 18 views
0

データベースを正規化するというアイデアはちょっと残念です。複数の値を持つMySQLデータベースを1つの列に正規化する

私のプロジェクトに関するいくつかの情報: 私はセキュリティガードのためにPHPとMySQLでレポートツールを作成しています。すべてのセキュリティガードは独自のログインを持ち、その日のレポートを作成できます。報告書は、これらの入力で構成されています

  1. 場所
  2. 警備員の仕事で - ここに私の問題も
  3. され、その後がある - ここに私の問題
  4. 状況ですチャートに使用される数字がある複数の入力フィールド。 (今日あなたが投げ捨てた人の数など)

ガードはレポートを作成することができますが、1つのレポートのガードを追加すると、私は頭を失います。私はconcatと同じ列の '、'で分割して読んだことがありますが、それは正規化を破壊し、悪い習慣です。

レポートのこの写真を見ることができます: Report

今これはノルウェー語であるので、多分あなたは理解していません。 "VekterepåJobb"は職場の警備員を意味します。ここでは複数のガード名を追加して、これを自分のDBに保存する必要があります。

問題:他の統計情報の入力フィールドが複数あるため、グラフを作成できますが、複数のセキュリティガードを追加することはできません。新しい行を作成する必要がある場合は、新しいIDを作成しないで、同じ値にする必要がある列を別のセキュリティガードを追加するだけです。

あなたは私の問題を理解していることを願っています。どうすればこのことができるのか分かり、残りの部分は世話をします。

私が必要なものを示して別のPIC:しかし、これが不可能である(休憩正規化)

Stack2

+0

'コンカットについては赤く、同じ列では分裂しますが、それは正規化を破壊し、悪い習慣です。私はそれが問題の中心だと思う。私は、データベーススキーマ全体を再考し、追加のデータベーステーブルを使用して調べる必要があります。 – Abela

答えて

3

あなたが作成することができます(グラフの列は、私はチャートを作成することができますので、番号があります) 「たくさんの」警備員として働く第3のテーブル。

したがって、例えば2列に Report_guards

、報告/グラフであり、ガードID

は両方のカラムは、それぞれのテーブルへの外部キーです。

+0

ジャンクションテーブルのような? – Asim

+0

うん、そうです。 –

+0

私は今夜これと一緒に仕事をし、それを起こそうとします。私はそれを行うことができない場合は、ここに戻って、可能であれば、再度助けを求める。あなたの時間のおかげでみんな答えた人:) – Asim

関連する問題