卸売りオンライン T シャツ ストアのデータベース スキーマを作成するのに助けが必要です

StackOverflow https://stackoverflow.com/questions/2483103

  •  21-09-2019
  •  | 
  •  

質問

現在、Tシャツの卸売りオンラインショップを運営しています。私は固定数量と価格でこれを実行しましたが、問題なく機能しています。次に、可変の数量と価格に対してこれを行う必要があります。

これに基づいてデザインを作成しようとしています 参考サイト.

私が作成した基本的なテーブルは次のとおりです。

CREATE TABLE attribute (
  attribute_id int(11) NOT NULL auto_increment,
  name varchar(100) NOT NULL,
  PRIMARY KEY  (attribute_id)
); 

CREATE TABLE attribute_value (
  attribute_value_id int(11) NOT NULL auto_increment,
  attribute_id int(11) NOT NULL,
  value varchar(100) NOT NULL,
  PRIMARY KEY  (attribute_value_id),
  KEY idx_attribute_value_attribute_id (attribute_id)
);

CREATE TABLE  product (
  product_id int(11) NOT NULL auto_increment,
  name varchar(100) NOT NULL,
  description varchar(1000) NOT NULL,
  price decimal(10,2) NOT NULL,
  image varchar(150) default NULL,
  thumbnail varchar(150) default NULL,
  PRIMARY KEY  (product_id),
  FULLTEXT KEY idx_ft_product_name_description (name,description)
);

CREATE TABLE product_attribute (
  product_id int(11) NOT NULL,
  attribute_value_id int(11) NOT NULL,
  PRIMARY KEY  (product_id,attribute_value_id)
);

可変数量に基づいて価格を保存する方法がわかりません。例: -

Quantity    Price
1-9         £1.91
10-99       £1.64
100-499     £1.10
500+        £1.14

製品とその関連テーブルの作成を手伝ってください。私の要件は上記の参考リンクと同じです。

役に立ちましたか?

解決

単にサイト上で示した価格決定マトリックスに一致するテーブルを作成します。

  CREATE TABLE product_qty_prices (
     id         INTEGER NOT NULL PRIMARY KEY,
     product_id INTEGER NOT NULL REFERENCES product,
     low_qty    INTEGER NOT NULL
     high_qty   INTEGER NOT NULL
     price      DECIMAL(10,2) NOT NULL )

またhigh_qty列を省略することを選択すると、次の行からlow_qtyを見て、あなたのアプリケーションにすることを導き出すが、私は一般的に、この設計と重複または不正な範囲を得ることのリスク、それは価値がある見つけることができます。

他のヒント

データモデルリソースブック、ボリューム1のコピーを取得 - 3を、よく設計されたデータスキーマを調べます。単に必要に応じて(彼らは強力です)。真剣

- 。店舗で価格はそれほど単純ではありません

あなたのデザインは少し混乱しています。あなたは、一般的なエンティティ - 属性値のデータモデルやドメイン固有のモデルをしたいですか?あなたの特定のドメインのモデリングは直接抽象EAV実装を口論しようとしているよりも簡単です。

あなたがサンプルの実装を見てみたい場合は、

は、バリー・ウィリアムズの図書館フリーのデータモデルは、優れた電子商取引の例があります。 こちらを調べます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top