請求書に対して行われた支払いの記録を保持する必要があります。いくつかのフィールドがある支払いテーブルがあります。特定の支払いで使用された請求書を保存する必要があります。請求書への支払い関係は1対多です。私はそれを変えることはできません。カンマで区切られた請求書を格納するフィールドを作成しますか、それともこれらの請求書を格納するための新しいテーブルを作成しますか?
注:請求書について話すときは、請求書番号(一意の識別子)のみを参照しています。
どちらのアプローチの長所と短所は何ですか?
請求書に対して行われた支払いの記録を保持する必要があります。いくつかのフィールドがある支払いテーブルがあります。特定の支払いで使用された請求書を保存する必要があります。請求書への支払い関係は1対多です。私はそれを変えることはできません。カンマで区切られた請求書を格納するフィールドを作成しますか、それともこれらの請求書を格納するための新しいテーブルを作成しますか?
注:請求書について話すときは、請求書番号(一意の識別子)のみを参照しています。
どちらのアプローチの長所と短所は何ですか?
まったく正規化されていないことを除いて(属性(列)が個別の値を持つ必要がある、つまり複数ではないことを示す1NFでさえも)、「コンマ区切りフィールド」を使用したインデックス作成、結合、クエリなどに関する多くの問題があります。 。
つまり、これらの請求書を保存するための新しいテーブルを作成します。
私の提案は、別のテーブルを使用してキー列を参照することです。利点は
詳細については、「正規化」を参照してください。