1

mysql テーブルには、tax_id、company_name、store_name の 3 つの列があります。tax_id と company_name は一意の組み合わせである必要があり、tax_id または company_name は別の company_name または tax_id と個別に組み合わせて存在することはできません。もう 1 つのことは、会社が持っているさまざまな (すべての) 店舗の 3 列目の名前を入力する必要があることです。テーブルの例は次のとおりです。

tax_id| company_name| store_name
1324  | Kmart       | 1st ave
1324  | Kmart       | broadway
1324  | Kmart       | 5th ave
7725  | DM          | shop 1
7725  | DM          | shop 2
7725  | DM          | shop 7
etc...

異なる会社で tax_id を使用することは禁止されているか、異なる tax_id で company_name を使用することは禁止されています。コード例も含め、どんな助けも大歓迎です。

4

2 に答える 2

1

私は2つのテーブルを使用します:

  • 企業
  • 店舗

会社にはtax_idとcompany_nameが含まれます。ストアには、外部キーとしてtax_idとstore_nameが含まれています。

次に、tax_idとcompany_nameを一意にし、tax_idをプライマリにすることができます

于 2012-06-24T07:38:37.167 に答える
1

tax_idcompany_nameは 1 対 1 のマッピングがあるため、データベースを正規化することをお勧めします。別のテーブルに移動して、または現在のテーブルにtax_id to company_name mapping保持する必要があります。必要な情報を絞り出すために使用できます。company_nametax_idJOIN

データベース構造を変更できない場合は、company_name に tax_id があるかどうかをデータベースに照会し、その後の情報を挿入クエリに使用する必要があります。

詳細については、データベースの正規化を参照してください

于 2012-06-24T07:42:27.243 に答える