关于批量删除数据时,删除关联表的数据失败
时间:2011-07-28
来源:互联网
求助:关于批量删除时,删除关联数据失败(也就是求批量删除数据时连同关联数据一起删掉的写法?)
(一对一关联)两个表分别是:
用户账号表 tool_user (字段:id,用户名,密码.....)
用户资料表 tool_user_more (字段:id,user_id,姓名,生日,年龄,电话.....)
我遇到的问题是:
单条删除(只带一个id,连通关联数据一起删除掉了,一切正常)
批量删除(带两个id,则只能删除主表的数据,不能删除关联数据)
下面是详细说明:
**************************************************************
单条删除(只带一个id,一切正常)
代码:$model->relation(true)->delete ('5');
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE ( `id` = '5' )
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id='5'
**************************************************************
批量删除(带两个id,生成的sql中,关联表没有获取到id的值)
下面是我写的两种写法都不能删除关联表的数据
--------------------------------------------------------------------
代码:$model->relation(true)->delete ('5,6');
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE ( `id` IN ('5','6') )
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id=''
或 ------------------------------------------------------------
代码:$model->relation(true)->where ("id in ('5,6')")->delete();
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE id in ('5,6')
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id=''
--------------------------------------------------------------------
***********************************************************
到底是tinkphp中没有内置的方法实现批量删除关联数据吗?
这样的问题,只要用tinkphp做过项目的大哥们都应该会用到我这样的删除吧,
你们是怎么删除的?
很简单的一个例子,删除一个用户时,同时把这个用户的管理数据一起删除掉
我要的效果是:批量删除,比如从复选框获取批量删除的用户id,删除它们
我遇到的问题是:
单条删除(只带一个id,连通关联数据一起删除掉了,一切正常)
批量删除(带两个id,则只能删除主表的数据,不能删除关联数据)
(一对一关联)两个表分别是:
用户账号表 tool_user (字段:id,用户名,密码.....)
用户资料表 tool_user_more (字段:id,user_id,姓名,生日,年龄,电话.....)
我遇到的问题是:
单条删除(只带一个id,连通关联数据一起删除掉了,一切正常)
批量删除(带两个id,则只能删除主表的数据,不能删除关联数据)
下面是详细说明:
**************************************************************
单条删除(只带一个id,一切正常)
代码:$model->relation(true)->delete ('5');
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE ( `id` = '5' )
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id='5'
**************************************************************
批量删除(带两个id,生成的sql中,关联表没有获取到id的值)
下面是我写的两种写法都不能删除关联表的数据
--------------------------------------------------------------------
代码:$model->relation(true)->delete ('5,6');
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE ( `id` IN ('5','6') )
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id=''
或 ------------------------------------------------------------
代码:$model->relation(true)->where ("id in ('5,6')")->delete();
转换的sql如下:
主表SQL: DELETE FROM `tool_user` WHERE id in ('5,6')
关联表SQL: DELETE FROM `tool_user_more` WHERE user_id=''
--------------------------------------------------------------------
***********************************************************
到底是tinkphp中没有内置的方法实现批量删除关联数据吗?
这样的问题,只要用tinkphp做过项目的大哥们都应该会用到我这样的删除吧,
你们是怎么删除的?
很简单的一个例子,删除一个用户时,同时把这个用户的管理数据一起删除掉
我要的效果是:批量删除,比如从复选框获取批量删除的用户id,删除它们
我遇到的问题是:
单条删除(只带一个id,连通关联数据一起删除掉了,一切正常)
批量删除(带两个id,则只能删除主表的数据,不能删除关联数据)
作者: zhoujianfeng 发布时间: 2011-07-28
简而言之:
“单条记录删除”: 删除 会员信息时,连同关联数据一起删除 (正常)
“批量删除” : 删除 会员信息时,不能连同关联数据一起删除 (失败)
“单条记录删除”写法: $model->relation(true)->delete ('5'); 删除id为5的记录
求“批量删除”???(删除id为5 或6的两记录)
“单条记录删除”: 删除 会员信息时,连同关联数据一起删除 (正常)
“批量删除” : 删除 会员信息时,不能连同关联数据一起删除 (失败)
“单条记录删除”写法: $model->relation(true)->delete ('5'); 删除id为5的记录
求“批量删除”???(删除id为5 或6的两记录)
作者: zhoujianfeng 发布时间: 2011-07-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28