mysql笔记(六)--商品系统设计(三):商品属性设计之固定属性

今天我们来讲一下商品属性  

  我们知道,不同类别的商品属性是不同的。  
  我们先建一个表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
复制代码
 

  现在这个过程,我们一次性完成插入数据,又添加属性。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值