www问答网
所有问题
sql数据库中2张表如果相互有对方的外键,怎么删除其中一条表数据
我知道先删从表数据再删主表数据,但如果a表的x字段引用b表的y字段,b表的m字段引用a表的n字段,那么不就相互为主表了吗。先删谁
举报该问题
推荐答案 2017-10-31
drop table 表名 casecade constrant;
删除一张表的方法。
建议不要再这样创建表,如果相互依赖,解决方法可以重新建一个关系表,分别设置外键
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://www.wendadaohang.com/zd/A43355KKn5W111K3d5d.html
相似回答
...有
外键
外键是A
表中
的主键 根据A表中主键
删除数据
的同时删除B表中外...
答:
常用办法1 delete from B where B.外键=x;delete from A where A.ID=x;办法2(现在用的人少了):
建立触发器,再删除A中数据的同事删除B表中的满足条件的数据
办法3:
在为B表创建外键约束的时候指定练级删除
,删除A表中的记录时,系统自动删除B表中对应的记录。创建脚本:create table A1(主...
sql
中 两张关联表,如何做到只
删除一张表,
另一张表不受影响 例表a(nam...
答:
方法1:delete 表a from 表a A join 表b B on A.name=B.name 方法2:delete from 表a where name in(select name from 表b)
这样就可以删除表a中有表b中的Name相同的记录,而不影响表b中的内容
级连
删除
触发器(
二
个
有外键
关系的表,当删除主表
一条
记录时,级连删除子...
答:
你也可以将delete换成update以实现级联修改
。当然,如果你想使用触发器的话,也可以这样:if OBJECT_ID('Tri_delete')>0 drop trigger Tri_delete go create trigger Tri_delete for delete as begin --批量删除 BEGIN set nocount on delete from 子表 where 子表.id in (select id from deleted...
sql
怎么删除
两个表
的外键
关系
答:
如果只是为了保留子表中的具体数据,
可以先把对应的记录插入到一个备份表中,再删除主表记录
,此时原子表中对应记录也会被删除,但可以在备份表中查到。如果是要把数据仍保存在子表中,就只能先撤消主外键关系再删除主表中记录了。当然,也可以在主表建个新的主键值,把子表对应要删除的记录的主键值...
sql
删除
带
外键
约束的表的语句是什么
答:
1、创建主键表,test_class,并建立class_id字段为主键;create table test_class(class_id number, class_name varchar2(20));-- Create/Recreate indexes alter table TEST_CLASS add constraint P_CLASS_ID primary key (CLASS_ID)using index tablespace USERS pctfree 10 initrans 2 maxtrans ...
sql
跨
表删除
答:
chengji表中的id列是student表
的外键,
然后就是级联删除,用到CASCADE。完整点写出来就是:alter table mark add constraint fk_student_id foreign key references mark(id)on delete cascade --这一行是关键,默认是不级联删除 -- on delete no action 这样我们只要
删除表
student中的数据就可以同时...
...小弟现在想对A和B两
张表
添加和
删除数据,sql
该
怎么
写
答:
--创建主外键关系 alter table a Add constraint aid primary key (Id)alter table b Add constraint bid primary key (Id)alter table b Add constraint aaid foreign key (aid) references a(Id)--插入用存储过程 CREATE PROCEDURE insertAB adata AS VARCHAR(200),--A表DATA bdata AS VARCHAR...
如何
删除sql
中带
外键的表数据
?
答:
为什么一定要一句话呢?一个
sql
语句不能同时删除两
张表,
除非通过外键级联删除或者触发器,最正常的做法当然是写成2个sql语句,然后用一个trans来保证数据一致性
,如果
非要用一个sql语句,可以有一个变通方法,写一侧存储过程
,删除
两张表,然后写的一句sql是执行这个存储过程 ...
SQL表
与表之间建立
外键
约束之后
,怎么
建立连级更新和
删除
?
答:
sql
语句写法:alter table SZ_Pictureadd constraint FK_SZ_PICTU_RELATIONS_SZ_PICTU foreign key (pictureTypeId)references SZ_PictureType (pictureTypeId)on update cascade on delete cascade;其中on update cascade on delete cascade代表级联更新和级联删除。图形界面操作方法:首先在PDM中两个表的...
大家正在搜
sql怎么查询重复的数据
一个数据库多少张表
查数据库有多少张表
数据库多表查询sql语句
数据库一列叫什么
多个表格如何组成数据库
sql一个表还是多个表
sql主键和外键
sql查询出重复的数据
相关问题
sql server数据库怎样同时删除两张表的数据
SQL中怎样删除表的主外键?
数据库三张表有主外键关系怎么删除
数据库删除有外键的表一行数据怎么操作?
数据库一个表a设置了外键关联表b,那么是不是必须先删除表a的...
有两张表 A表和B表 B表中有外键 外键是A表中的主键 根据...
如何用一句sql删除两个表中相关联的数据(没有外键)
sqlserver2005中如何查看某一表跟哪张表有主外键关...