我使用
alter table fkt
add foreign key(fkey) references pkt
为fkt表添加了参照pkt主键的外键。现在我想把这个外键用sql删除,但是由于添加时没有给外键约束起名,如何删除呢?
alter table fkt
add foreign key(fkey) references pkt
为fkt表添加了参照pkt主键的外键。现在我想把这个外键用sql删除,但是由于添加时没有给外键约束起名,如何删除呢?
解决方案 »
- 在Oracle10g里面怎么设置表空间为自动扩展?
- 如何解决ORA-12154: TNS: 无法解析指定的连接标识符
- 如何定制oracle用户下的shell脚本自动运行
- 请问如何在客户端通过DOS修改服务器上的oracle数据库中的表数据??
- 清理归档日志问题
- 谁能告诉我mysql和oracle个自有什么优点和缺点吗?
- 在Redhat9.0下安装Oracle 9i出现的问题,有安装成功的进来呀,高分!
- plsql 中怎么在日期中分别提取年,月,日,时,分,秒 的函数? 解决问题马上结帐
- 高手请问,在创建回退段时,出现“自动撤消模式中的回退段操作非法”,
- 请问export数据时,我只是想把自己所建的table给导出,但不想用tables=....请问怎么做呢?
- PLSQL Developer 8 一个SQL窗口插入数据,另一个SQL窗口查不到
- 求一些OWB的资料
你添加约束时候就算没有指定约束名,Oracle在创建的时候就会自己创建一个约束名,你先找到这个约束名,再删除。
可以在developer点击fkt表,查看load表结构 看下就知道了
或者查看user_constraints、user_cons_columns视图select a.owner, --主键拥有者
a.table_name, --主键表
b.column_name, --主键列
c.OWNER, --外键拥有者
c.table_name, --外键表
d.column_name --外键列
from user_constraints a
left join user_cons_columns b
on a.constraint_name=b.constraint_name
left join user_constraints c
on c.R_CONSTRAINT_NAME=a.constraint_name
left join user_cons_columns d
on c.constraint_name=d.constraint_name
where a.constraint_type='F'
and a.table_name='xxx' --需要查看主外键关系的表
order by a.table_name
SELECT t.constraint_name
FROM user_constraints t
WHERE t.table_name = 'FKT' AND
t.constraint_type = 'R';
--删除外键
ALTER TABLE EMP2 drop CONSTRAINT <上一步查出的约束名称>;