荷梅月剑 编程之路

这个世界没有偶然,有的只是必然
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SQL语句级联的写法(原创)

Posted on 2007-08-14 14:48  荷梅月剑  阅读(550)  评论(0)    收藏  举报

表1(用户表) tb_user
userid    --主键 自动增量
name    --用户名

表2(用户发表的消息表) tb_msg
userid   --外键 用户表ID
msgid    --主键 自动增量
msg     --消息内容

表3(针对用户发表的消息的留言表) tb_leave
msgid    --外键 消息表ID
leaveid    --主键 自动增量
leave     --留言内容

要求:要把此用户,及此用户发表的消息,及此用户发表的消息的留言全部删除

解决:

delete tb_leave from tb_leave a right join tb_msg b on a.msgid=b.msgid 
right join tb_user c on b.userid=c.userid where userid=1
delete tb_msg from tb_msg b 
right join tb_user c on b.userid=c.userid where userid=1
delete tb_user where userid=1

这是一个很简单的例子,我SQL不是很好的说