所以在执行关联更新前要先删除一对多的表格相关数据。
这个是多对多的:
SHOW COLUMNS FROM `hd_goods_cat` [ RunTime:0.003000s ]
DELETE FROM `hd_goods_cat` WHERE `goods_id` = 2 [ RunTime:0.000000s ]
INSERT INTO hd_goods_cat (goods_id,cat_id) SELECT a.goods_id,b.cat_id FROM hd_goods AS a ,hd_category AS b where a.goods_id =2 AND b.cat_id IN (5,8,7) [ RunTime:0.000000s ]
SHOW COLUMNS FROM `hd_goods_gallery` [ RunTime:0.003000s ]
这个是一对多的:
SHOW COLUMNS FROM `hd_goods_desc` [ RunTime:0.004000s ]
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/ob
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/ob
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/ob
SHOW COLUMNS FROM `hd_goods_article` [ RunTime:0.004000s ]
另外:多对多关联模型中间表ID不支持10位数以上,只能1-9。
提醒:一对多更新的时候是二维数组。
一对多.png
( 12.5 KB 下载:10 次 )
最佳答案