
image

image
再看看后臺(tái)對(duì)應(yīng)的設(shè)置,手機(jī)例子
顏色:黑色 白色 金色
內(nèi)存:32G 64G 128G
因?yàn)?黑色手機(jī)也有 32G 64G 128G , 然后白色手機(jī)也有32G 64G 128G 金色手機(jī)也有 32G 64G 128G 所以這里是有9種組合
9種價(jià)格 9種庫(kù)存 9種條碼 當(dāng)拿到其中一個(gè)條碼時(shí)就知道這個(gè)商品(手機(jī))是什么規(guī)格是什么顏色什么內(nèi)存等。。。。
下面來看看表結(jié)構(gòu)設(shè)計(jì)

image
如上圖可以看出
1. tp_goods_type 表的 id 4 表示手機(jī),
2. tp_spec 表 type_id 里面的 4表是手機(jī) id 16表示顏色 6表示內(nèi)存
3. tp_spec_item表 spec_id 6表示內(nèi)存 id 28表示 31G
4. tp_spec_item表 spec_id 16表示顏色 id 55表示 黑色
5. tp_spec_goods_price表的 key字段 28_55 表示32G 黑色 剛好對(duì)應(yīng) tp_spec_item表
如上圖清晰可以理解, 如果不理解多看幾遍完全可以簡(jiǎn)單理解。
以下是創(chuàng)建這四張表的sql 代碼。 自己也可以在本地TPshop數(shù)據(jù)庫(kù)查看一下
tpshop.tp_goods_type 商品類型表
CREATE TABLE `tp_goods_type` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id自增',
`name` varchar(60) NOT NULL DEFAULT '' COMMENT '類型名稱',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=34 DEFAULT CHARSET=utf8
tpshop.tp_spec 規(guī)格表
CREATE TABLE `tp_spec` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '規(guī)格表',
`type_id` int(11) DEFAULT '0' COMMENT '規(guī)格類型',
`name` varchar(55) DEFAULT NULL COMMENT '規(guī)格名稱',
`order` int(11) DEFAULT '50' COMMENT '排序',
`search_index` tinyint(1) DEFAULT '0' COMMENT '是否需要檢索',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=28 DEFAULT CHARSET=utf8
tpshop.tp_spec_item 規(guī)格項(xiàng)表
CREATE TABLE `tp_spec_item` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '規(guī)格項(xiàng)id',
`spec_id` int(11) DEFAULT NULL COMMENT '規(guī)格id',
`item` varchar(54) DEFAULT NULL COMMENT '規(guī)格項(xiàng)',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=123 DEFAULT CHARSET=utf8
tpshop.tp_spec_goods_price 規(guī)格對(duì)應(yīng) 價(jià)格 庫(kù)存 條碼表
CREATE TABLE `tp_spec_goods_price` (
`goods_id` int(11) DEFAULT '0' COMMENT '商品id',
`key` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL COMMENT '規(guī)格鍵名',
`key_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL COMMENT '規(guī)格鍵名中文',
`price` decimal(10,2) DEFAULT NULL COMMENT '價(jià)格',
`store_count` int(11) unsigned DEFAULT '10' COMMENT '庫(kù)存數(shù)量',
`bar_code` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT '' COMMENT '商品條形碼'
) ENGINE=MyISAM DEFAULT CHARSET=utf8