Customer と Orders の 2 つのテーブルを持つ SQLite でデータベースを作成したいと考えています。各顧客は多くの注文を持つことができます。(1 対多の関係であることは理解しています)。各注文には、クレジット カード情報、条件、および配送情報 (非住所タイプの情報) に加えて、多くの「品目」(品目とは「品目」の特定の注文) を含めることができます。特定の顧客のすべての注文を検索する機能が必要ですが、注文に基づいて顧客を検索する必要はありません。
これは、これまでの Customer テーブルの内容です。
[db executeUpdate:@"CREATE TABLE IF NOT EXISTS CustData ("
"BUS_NAME TEXT PRIMARY KEY NOT NULL, "
"EMAIL TEXT, "
"PHONE TEXT, "
"SHOP_NAME TEXT, "
"SHOP_ADDR1 TEXT, "
"SHOP_ADDR2 TEXT, "
"SHOP_CITY_STATE TEXT, "
"SHOP_ZIP TEXT, "
"SHIP_NAME TEXT, "
"SHIP_ADDR1 TEXT, "
"SHIP_ADDR2 TEXT, "
"SHIP_CITY_STATE TEXT, "
"SHIP_ZIP TEXT, "
"NOTES TEXT)"];
これは私が注文テーブルのために持っているものです:
[db executeUpdate:@"CREATE TABLE Orders ("
"CUST_ID TEXT REFERENCES CustData, "
"ORDER_NBR TEXT, "
"SALES_NAME TEXT, "
"CREDIT_CARD TEXT, "
"EXP_DATE TEXT, "
"CID TEXT, "
"NOTES TEXT, "
"PCS INTEGER, "
"PATTERN TEXT, "
"STYLE_NAME TEXT, "
"PRICE DECIMAL)" ];
PCS、Pattern、Style_Name、および Price は「品目」と見なされます。
私の質問は次のとおりです。「項目」に関してこれらのテーブルを定義する正しい方法はありますか、それともより良い方法はありますか?