作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主
CREATE table t_purchase(
id int unsigned PRIMARY KEY AUTO_INCREMENT COMMENT "主键",
sku_id int unsigned not null COMMENT "商品id",
num int unsigned not null COMMENT "数量",
warehouse_id int unsigned not null COMMENT "仓库id",
in_price decimal(10,2) unsigned not null COMMENT "采购价格",
out_price decimal(10,2) unsigned COMMENT "建议零售价",
buyer_id int unsigned not null COMMENT "采购员id",
`status` tinyint unsigned not null COMMENT "状态:1未完成,2已完成",
create_time timestamp not null default now() COMMENT "添加时间",
INDEX idx_sku_id(sku_id),
INDEX idx_warehouse_id(warehouse_id),
INDEX idx_buyer_id(buyer_id),
INDEX idx_status(`status`),
INDEX idx_create_time(create_time)
) COMMENT="采购表";
采购的是商品表t_sku中的id==1的商品.
num:数量是五十部手机. warehouse_id:是为一号仓库做的采购。
in_price:采购价格3000元. out_price:建议零售价3299元. buyer_id:采购员编号为20 status:完成采购就为1.否则0
CREATE TABLE t_productin(
id int unsigned PRIMARY KEY AUTO_INCREMENT COMMENT "主键",
storekeeper_id int unsigned not null COMMENT "保管员id",
amount decimal(15,2) unsigned not null COMMENT "总金额",
supplier_id int unsigned not null COMMENT "供应商id",
payment decimal(15,2) unsigned not null COMMENT "实付金额",
payment_type tinyint unsigned not null COMMENT "支付方式",
invoice boolean not null COMMENT "是否开票",
remark varchar(200) COMMENT "备注",
create_time timestamp not null default now() COMMENT "添加时间",
INDEX idx_storekeeper_id(storekeeper_id),
INDEX idx_supplier_id(supplier_id),
INDEX idx_payment_type(payment_type),
INDEX idx_create_time(create_time)
) COMMENT="入库信息表";
入库对吧。库的保管员是谁呢?运去的货价值多少钱(原价:卖给我们的价值。然后零售价就是卖给消费者的价格).。那个供应商的货。我们付款多少钱。支付的方式。开票吗?入库时间.
storekeeper_id:仓库保管员的编号为42. amount:原价总金额:15000 supplier_id:1号供货商给的货 payment:支付金额十五万。支付方式1
CREATE TABLE t_productin_purchase(
productin_id int unsigned not null COMMENT "入库id",
purchase_id int unsigned not null COMMENT "采购id",
PRIMARY KEY(productin_id,purchase_id)
) COMMENT="入库商品表";
解释: 入库和采购是关联的。这样做是为了采购的和入库的信息对应起来。
保持唯一性.怕某一个字段出现重复性.这样复合主键极大的缩小这种概率问题.