码迷,mamicode.com
首页 > 其他好文 > 详细

会员价格删除

时间:2016-07-19 09:06:17      阅读:118      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!