1.创建主键约束
alter table child add constraint pk_child_uuid primary key(uuid) [using index];
2.创建唯一约束
alter table child add constraint uk_child_id unique(name) [using index];
3.创建检查约束
alter table child add constraint ck_child_sex check(sex in('male','female'));
alter table child add constraint ck_child_sex check((sex = 'male') or (sex = 'female'));
4.创建外键约束
alter table child add constraint fk_child_state foreign key(state) references parent(state) [on delete cascade];
--不指定父表字段则默认参照为父表的主键字段
5.跨schema定义外键时,需授予用户相关表的references权限
grant references on user_1.tb to user_2;
然后可在user_2的相关表上建立以user_1.tb为父表的外键约束
约束建好好不能取消该references权限,加上cascade constraints可强制取消
该权限强制取消后,相应的外键约束也被删除。
6.references权限只能直接显示授予,不能通过角色授予。
7.sys用户要执行相应的引用也要显示得授予references权限。
alter table child add constraint pk_child_uuid primary key(uuid) [using index];
2.创建唯一约束
alter table child add constraint uk_child_id unique(name) [using index];
3.创建检查约束
alter table child add constraint ck_child_sex check(sex in('male','female'));
alter table child add constraint ck_child_sex check((sex = 'male') or (sex = 'female'));
4.创建外键约束
alter table child add constraint fk_child_state foreign key(state) references parent(state) [on delete cascade];
--不指定父表字段则默认参照为父表的主键字段
5.跨schema定义外键时,需授予用户相关表的references权限
grant references on user_1.tb to user_2;
然后可在user_2的相关表上建立以user_1.tb为父表的外键约束
约束建好好不能取消该references权限,加上cascade constraints可强制取消
该权限强制取消后,相应的外键约束也被删除。
6.references权限只能直接显示授予,不能通过角色授予。
7.sys用户要执行相应的引用也要显示得授予references权限。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22745099/viewspace-625592/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22745099/viewspace-625592/