首页 > 其他 > 详细

会员价格删除

时间:2016-07-19 09:06:16      阅读:295      评论:0      收藏:0      [点我收藏+]

当删除一件商品时,这件商品对应的会员价格也应该从会员价格表中删除掉。

 

在删除一件商品之前删除会员价格

两种方法:

程序实现:【用这种,扩展性比较,不需要修改表结构】

 

protected function _before_delete($option)
{
$id = $option[‘where‘][‘id‘]; // 要删除的商品的ID
/*************** 删除原来的图片 *******************/
// 先查询出原来图片的路径
$oldLogo = $this->field(‘logo,mbig_logo,big_logo,mid_logo,sm_logo‘)->find($id);
deleteImage($oldLogo);

/**********删除会员价格 *******/
$mpModel=D(‘member_price‘);
$mpModel->where(array(
‘goods_id‘=>array(‘eq‘,$id),
))->delete();
}

 

 

MYSQL自带的外键:

扩展:如何不使用代码删除,当删除商品时会员价格表中的记录自动被删除?

可以使用MYSQL中自带外键约束来实现【前提:只有InnoDB引擎支持】

 

 

drop table if exists p40_member_price;
create table p40_member_price
(
price decimal(10,2) not null comment ‘会员价格‘,
level_id mediumint unsigned not null comment ‘级别Id‘,
goods_id mediumint unsigned not null comment ‘商品Id‘,
foreign key(goods_id) references p40_goods(id) on delete cascade,
key level_id(level_id),
key goods_id(goods_id)
)engine=InnoDB default charset=utf8 comment ‘会员价格‘;

 

 

 

会员价格删除

原文:http://www.cnblogs.com/gooderic/p/5683082.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!