我使用的是php语言,数据库是mysql, 我写了这样一段sql语句.
deleteinv,pro,optfrominvestigateinv,problempro,optionoptwhereinv.Id=pro.investigate_I...
delete inv,pro,opt from investigate inv,problem pro,option opt where
inv.Id = pro.investigate_Id and pro.Id=opt.problem_id and inv.Id='$id';
我遇见的问题是: 如果option 表里面没有和problem表有关联的数据的时候,那么执行这段sql代码,就连 investigate ,problem 这两张表的内容都不能删除,第一次遇见这问题. 展开
inv.Id = pro.investigate_Id and pro.Id=opt.problem_id and inv.Id='$id';
我遇见的问题是: 如果option 表里面没有和problem表有关联的数据的时候,那么执行这段sql代码,就连 investigate ,problem 这两张表的内容都不能删除,第一次遇见这问题. 展开
2个回答
2016-09-08
展开全部
查看一下你是否使用了外键。
追问
没有设置外键.这样写还需要设置外键?
追答
不是,我看你表达的意思就是那个意思,我以为你设置了外键。我理解错了,可能,抱歉。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这问题我之前就回复给你了,你这么写不对怎么可能执行。
你现在要么就是把这一条sql拆分 要么就用左联方式删除
你现在要么就是把这一条sql拆分 要么就用左联方式删除
追问
左联方式是怎么弄啊 大哥 这句话 delete tableA a from tableA a left join tableB b on a.netbar_id = b.netbar_id where b.role_id = 0; 你给我的 看不懂 额 ,还有我是三张表 这句话是两张表 后面怎么改没弄过.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询