首页 新闻 会员 周边

请高手为菜鸟指点!不胜感激

0
悬赏园豆:15 [已关闭问题]

有两张表a,b。a中的主键是idofuser,b中同样有idofuser,并设为外键。现在我想删除一条记录(这条记录内容包含在a表和b表中),怎样用sql语句中delete   from把a表和b表中与该条记录相关内容删去?

问题补充: a是父表,b是子表,怎样用delete删除一条记录?该记录的完整内容包含在a和b两个表中。
燃烧吧,少年的主页 燃烧吧,少年 | 初学一级 | 园豆:35
提问于:2010-02-24 14:38
< >
分享
其他回答(8)
0

   被你的表述弄晕了。

Ou lei | 园豆:619 (小虾三级) | 2010-02-24 15:05
0

你可以把A B设为关联删除,然后你删A表时,B表中的内容也会删除(这是数据库自己完成的).

一滴血 | 园豆:1602 (小虾三级) | 2010-02-24 15:08
0

只要在外键级联设置里设置级联删除就可以了

查尔斯 | 园豆:3832 (老鸟四级) | 2010-02-24 15:17
0

a表 属性-->关系页-->新建外键-->选择主键表、外键表-->关联字段-->选择下面“联机删除相关的记录”。

执行 delete from a 直接全部删掉

邢少 | 园豆:10926 (专家六级) | 2010-02-24 15:57
0

先删除子表再删除主表应该可以的吧

个人不喜欢这个关联表,很烦的

新手打酱油 | 园豆:109 (初学一级) | 2010-02-24 16:19
0

两种方式,一个是在关系里设置级联删除,一个是写触发器。

天堂口 | 园豆:514 (小虾三级) | 2010-02-24 21:31
0

你想复杂了把,这个不是很简单吗?直接删除就可以了啊

delete a where idofuser=?

delete b where idofuser=?

如果你要删除 a 表 idofuser=?的资料 a和b 不是用 idofuser关联的才需要关联

select a.ID,b.ID into #aa  from a,b where a.关联条件=b.关联条件 and idofuser=?

delete a  where ID in (Select a.ID from #aa)

delete b where ID in (Select b.ID from #aa)

 如果只删除b 表的资料

可以 delete b from a,b where a.关联条件=b.关联条件 and  idofuser=?

陳修君 | 园豆:480 (菜鸟二级) | 2010-02-25 09:32
0

引用 陳修君  的回答   这样是绝对可以的。。测试通过

你想复杂了把,这个不是很简单吗?直接删除就可以了啊

delete a where idofuser=?

delete b where idofuser=?

如果你要删除 a 表 idofuser=?的资料 a和b 不是用 idofuser关联的才需要关联

select a.ID,b.ID into #aa  from a,b where a.关联条件=b.关联条件 and idofuser=?

delete a  where ID in (Select a.ID from #aa)

delete b where ID in (Select b.ID from #aa)

 如果只删除b 表的资料

可以 delete b from a,b where a.关联条件=b.关联条件 and  idofuser=?

zhangpeng1008 | 园豆:283 (菜鸟二级) | 2010-02-25 17:04
0

1.可以设置级联删除

2.分别写两条sql语句

delete a where idofuser=?

delete b where idofuser=?

 

langford | 园豆:710 (小虾三级) | 2010-02-27 09:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册