-
创建表时设置外键约束(下)
CONSTRAINT constraint_name FOREIGN KEY(column_name) REFERENCES table_name(column_name) [ON DELETE CASCADE]
-----------------------------------------
create table userinfo_f2(
id varchar2(10) primary key,
username varchar2(20),
typeid_new varchar2(10),
constraint fk_typeid_new foreign key(typeid_new)references typeinfo(typeid));
----------------------------------------
create table userinfo_f3
(id varchar2(10) primary key,
username varchar2(20),
typeid_new varchar2(10),
constraint fk_typeid_new1 foreign key(typeid_new)references typeinfo(typeid) on delete cascade);
查看全部 -
外键约束
在创建表时设置外键约束
CREATE TABLE table1[从表](column_name datatype REFERENCES table2[主表](column_name),...);
*设置外键约束时,主表的字段必须是主键
*主从表中相应的字段必须是同一个数据类型
*从表中外键字段的值必须来自主表中的相应字段的值,或者为null值create table typeinfo(
typeid varchar2(10) primary key ,
typename varchar2(20));
-------------------------------------------
举例:用户表中有一个用户类型字段,设置它为外键字段,引用用户类型表中的编号字段。
create table userinfo_f(
id varchar2(10) primary key,
username varchar2(20),
typeid_new varchar2(10) references typeinfo(typeid));
-------------------------------------------------------------
insert into typeinfo values(1,1);
insert into userinfo_f(id,typeid_new)values(1,1);
insert into userinfo_f(id,typeid_new)values(2,null);
查看全部 -
在修改表时添加主键约束
ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY(column_name1,...);
查找约束字典
desc user_constraints
在数据字典中查找表为USERINFO的主键
select constraint_name from user_constraints where table_name='USERINFO';
更改约束的名称
ALTER TABLE table_name RENAME CONSTRAINT old_name TO new_name
删除主键约束
禁用主键约束(disable禁用,enable启用)
ALTER TABLE table_name DISABLE|ENABLE CONSTRAINT constraint_name
select constraint_name,status from user_constraints where table_name='USERINFO';
删除约束方式
ALTER TABLE table_name DROP CONSTAINT constraint_name
删除表的主键约束
alter table table_name DROP PRIMARY KEY[CASCADE]
查看全部 -
select username,decode(username,'aaa','计算机部门','bbb','市场部门','其他') as 部门 from users;
查看全部 -
case when 的另一种写法 较为灵活
查看全部 -
这才是约束这个用法的核心吧,对数据进行约束
查看全部 -
查约束状态的语句
查看全部 -
每一列的唯一约束名字必须不同
查看全部 -
一脸蒙蔽,就记得连锁删除这一条
查看全部 -
外键可以为空值(或者主表的同值)这是一种怎么样的表示呢
查看全部 -
直接删该表的主键约束(毕竟唯一)
查看全部 -
数据字典里还有约束的状态信息statu
查看全部 -
禁用约束=删除约束?不是,可以通过drop删除表的约束
查看全部 -
更改约束的名字,通用的
查看全部 -
改约束也属于升维操作
查看全部
举报