今天我们来讲一下商品属性
我们知道,不同类别的商品属性是不同的。
我们先建一个表prod_class_attr:
给这个表填入一些数据:
接下来,我们再建一个商品属性对应表 prod_attr
好了,下面我们把新增商品的流程撸一遍:
第一步,往商品主表插入数据
我们来新建一个存储过程 sp_new_prod:
BEGIN INSERT INTO prod_main(prod_name,prod_classid) VALUES (_prod_name,_class_id); END
参数:IN _prod_name varchar(50),IN _class_id int
call一下
call sp_new_prod('测试商品001',1)
于是在主表中,我们就可以看到刚刚插入的数据
现在我们动态执行sql
ok,我们按照这个思路,重写刚才的存储过程
BEGIN set @pid=0; INSERT INTO prod_main(prod_name,prod_classid) VALUES (_prod_name,_class_id); set @pid = LAST_INSERT_ID(); set @ss = CONCAT('insert into prod_attr select ? as prod_id,a.* from (',_attr_sql,')a') ; PREPARE pname from @ss; EXECUTE pname using @pid; DEALLOCATE PREPARE pname; END
现在这个过程,我们一次性完成插入数据,又添加属性。
上一课:mysql颠覆实战笔记(五)--商品系统设计(二):定时更新商品总点击量
下一课:mysql颠覆实战笔记(七)--白话理解事务
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享。但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的《web级mysql颠覆实战课程 》。如需转载请尊重老师劳动,保留沈逸老师署名以及课程来源地址。