新零售数据库(3):商品的库存设计
零售店与仓库,n对m关系,建立关联表就只能从固定仓库进货。零售店库存和仓库库存处理。对应实体关系图如下:
先创建城市和省份表
CREATE TABLE t_province( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT \'主键\', province VARCHAR(200) NOT NULL COMMENT \'省份\', is_deleted BOOLEAN NOT NULL DEFAULT 0 COMMENT \'逻辑删除\', UNIQUE unq_province(province) )COMMENT=\'省份表\'; CREATE TABLE t_city( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT \'主键\', city VARCHAR(200) NOT NULL COMMENT \'城市\', province_id INT UNSIGNED NOT NULL COMMENT \'省份ID\', is_deleted BOOLEAN NOT NULL DEFAULT 0 COMMENT \'逻辑删除\' )COMMENT=\'城市表\'; INSERT INTO `t_province` VALUES (1, \'北京\', 0); INSERT INTO `t_province` VALUES (2, \'上海\', 0); INSERT INTO `t_province` VALUES (3, \'天津\', 0); INSERT INTO `t_province` VALUES (4, \'重庆\', 0); INSERT INTO `t_province` VALUES (5, \'辽宁\', 0); INSERT INTO `t_province` VALUES (6, \'吉林\', 0); INSERT INTO `t_province` VALUES (7, \'黑龙江\', 0); INSERT INTO `t_province` VALUES (8, \'山东\', 0); INSERT INTO `t_province` VALUES (9, \'江苏\', 0); INSERT INTO `t_province` VALUES (10, \'浙江\', 0); INSERT INTO `t_province` VALUES (11, \'安徽\', 0); INSERT INTO `t_province` VALUES (12, \'福建\', 0); INSERT INTO `t_province` VALUES (13, \'江西\', 0); INSERT INTO `t_province` VALUES (14, \'广东\', 0); INSERT INTO `t_province` VALUES (15, \'广西\', 0); INSERT INTO `t_province` VALUES (16, \'海南\', 0); INSERT INTO `t_province` VALUES (17, \'河南\', 0); INSERT INTO `t_province` VALUES (18, \'湖南\', 0); INSERT INTO `t_province` VALUES (19, \'湖北\', 0); INSERT INTO `t_province` VALUES (20, \'河北\', 0); INSERT INTO `t_province` VALUES (21, \'山西\', 0); INSERT INTO `t_province` VALUES (22, \'内蒙古\', 0); INSERT INTO `t_province` VALUES (23, \'宁夏\', 0); INSERT INTO `t_province` VALUES (24, \'青海\', 0); INSERT INTO `t_province` VALUES (25, \'陕西\', 0); INSERT INTO `t_province` VALUES (26, \'甘肃\', 0); INSERT INTO `t_province` VALUES (27, \'新疆\', 0); INSERT INTO `t_province` VALUES (28, \'四川\', 0); INSERT INTO `t_province` VALUES (29, \'贵州\', 0); INSERT INTO `t_province` VALUES (30, \'云南\', 0); INSERT INTO `t_province` VALUES (31, \'西藏\', 0); INSERT INTO `t_province` VALUES (32, \'香港\', 0); INSERT INTO `t_province` VALUES (33, \'澳门\', 0); INSERT INTO `t_province` VALUES (34, \'台湾\', 0); INSERT INTO `t_city` VALUES (1, \'沈阳\', 5, 0); INSERT INTO `t_city` VALUES (2, \'大连\', 5, 0); INSERT INTO `t_city` VALUES (3, \'鞍山\', 5, 0); INSERT INTO `t_city` VALUES (4, \'长春\', 6, 0); INSERT INTO `t_city` VALUES (5, \'吉林\', 6, 0); INSERT INTO `t_city` VALUES (6, \'哈尔滨\', 7, 0); INSERT INTO `t_city` VALUES (7, \'齐齐哈尔\', 7, 0); INSERT INTO `t_city` VALUES (8, \'牡丹江\', 7, 0);
商品和库存表如下:
CREATE TABLE t_warehouse( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT \'主键\', city_id INT UNSIGNED NOT NULL COMMENT \'城市ID\', address VARCHAR(200) NOT NULL COMMENT \'地址\', tel VARCHAR(20) NOT NULL COMMENT \'电话\', `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT \'逻辑删除\', INDEX idx_city_id(city_id) )comment=\'仓库表\'; CREATE TABLE t_warehouse_sky( warehouse_id INT UNSIGNED COMMENT \'仓库ID\', sku_id INT UNSIGNED COMMENT \'商品ID\', num INT UNSIGNED NOT NULL COMMENT \'库存数量\', unit VARCHAR(20) NOT NULL COMMENT \'库存单位\', `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT \'逻辑删除\', PRIMARY KEY (warehouse_id,sku_id) )COMMENT=\'仓库商品库存表\';
零售店和商品
CREATE TABLE t_shop( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT \'主键\', city_id INT UNSIGNED NOT NULL COMMENT \'城市ID\', address VARCHAR(200) NOT NULL COMMENT \'地址\', tel VARCHAR(20) NOT NULL COMMENT \'电话\', `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT \'逻辑删除\', INDEX idx_city_id(city_id) )comment=\'商店表\'; CREATE TABLE t_shop_sku( shop_id INT UNSIGNED COMMENT \'商店ID\', sku_id INT UNSIGNED COMMENT \'商品ID\', num INT UNSIGNED NOT NULL COMMENT \'库存数量\', unit VARCHAR(20) NOT NULL COMMENT \'库存单位\', `is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT \'逻辑删除\', PRIMARY KEY (shop_id,sku_id) )COMMENT=\'仓库商品库存表\';
版权声明:本文为xiaofeiyang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。