Oracle SQL教程:如何删除带有外键约束的表的外键约束
sql删除带外键约束的表的语句是什么
1创建主键表test_class,并设置字段class_id为主键;
createtabletest_class(class_idnumber,class_namevarchar2(20));
--创建。
/重新创建索引
altertableTEST_CLASS
addconstraintP_CLASS_ID主键(CLASS_ID)
使用索引
tablespaceUSERS
pctfree10
initrans2
maxtrans255;
2创建外键表test_stu,其中class_id字段为表test_class的字段class_id;
creatabletest_stu.(idnumber,class_idnumber);
--创建/重新创建键、唯一和外部约束
altertableTEST_STU
addconstraintf_class_idforeignkey(CLASS_ID)
referencestest_class(CLASS_ID)ondeletecascade;
3.分别向两个表中插入数据;
insertintoTEST_CLASSvalues(1001,'中文');
insertintoTEST_CLASSvalues(1002,'math');
插入TEST_CLASS值(1003,'英语');
插入TEST_STU值(1,1001);
插入TEST_STU值(2,1001);
在TEST_STU值中输入(3,1002);
插入TEST_STU值(4,1003);
4.查找表TEST_STU.*,rowidfromtest_stu中的数据
5删除主表TEST_CLASS中的cla对于ss_id=1001的记录,会发现表TEST_STU中class_id中的记录被删除了还;
deletetest_classwhereclass_id=1001;
提交;
selectt.*,t.rowidfromTEST_STUt
ORACLE语句怎么删除外键约束,只是删约束,不是删表
您可以使用SQl语句删除无关的键,也可以使用其他工具(例如PL/SQL)。
1.
1.
2.
3.
4.