在oracle中,可以利用ALTER语句来修改外键,语法为“ALTER TABLE 表名 ADD CONSTRAINT 约束 foreign KEY (column_name) references 表名(id)”。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
登录到oracle数据库,要求登录的用户有创建object的权限。这里以SCOTT用户为例,用SQL tools来链接数据库。
新建两个表来实现外键的关联。
create table main_tab ( id number, name varchar2(30) ); create table sub_tab ( id number, main_id number, name varchar2(30) );
这里要设置sub_tab里面的mian_id为外键。设置外键的前提是main_id必须是main_tab的主键。所以要先设置main_tab的主键。
代码如下:
ALTER TABLE main_tab ADD CONSTRAINT pk_main_tab PRIMARY KEY(id);
这个时候可以在sub_tab中设置外键了。
代码如下:
ALTER TABLE sub_tab ADD CONSTRAINT fk_sub_tab foreign KEY (main_id) references main_tab(id);
这里解释下alter table的命令。
ALTER TABLE sub_tab ADD CONSTRAINT fk_sub_tab foreign KEY (main_id) references main_tab(id);
alter table table_name-----------------------意思就是要改动某个表
add constraint constraint_name-------------意思就是给某个表加约束/限制
foreign key(column_name)------------------说明是外键的约束,而且是某个column的。
references table_name(id);------------------指定这个外键是属于哪个表的
外键必须是主表的主键。
推荐教程:《Oracle视频教程》
以上是oracle怎么修改外键的详细内容。更多信息请关注PHP中文网其他相关文章!