修改表时添加主键的约束
add constraint constraint_name primary key(column_name1,....);
alter talbe userinfo
add constraint pk_id primary key (id);
select constraint_name from user_constrains where table_name='USERINFO';
更改约束的名称
rename constraint old_name to new_name;
---不仅仅可以修改主键的约束,也可以修改任何约束的名称;
alter table userinfo
rename constraint pk_id to new_pk_id;
select constraint_name from user_constraints where table_name = 'USERINF';
删除主键的约束
disable|enable constraint constraint_name;
disable 禁用当前的约束;
alter table userinfo
disable constraint new_pk_id;
select constaint_name,status from user_constraints where table_name = 'USERINFO';
status字段查看是否被禁用的约束
删除约束
drop constraint constraint_name;
drop constraint new_pk_id;
select constraint_name,status from user_constraints where table_name='USERINFO';
drop primary key[caseade] ;----删除主键约束
cascade 如果主键有外键约束用到
alter table userinfo_p
drop primary key;
desc userinfo_p;---- not null 已经没有了;
修改表是添加主键约束
修改、设置主键约束前,确保表中相关字段没有值
更改约束的名称
PRIMARY KEY
在修改表时添加主键约束
1、Alter Table table_name Add Constraint constraint_name Primary Key(column_name1,...);
更改约束的名称
1、Alter Table table_name Rename Constraint old_name To new_name;
删除主键约束
1、Alter Table table_name Disable|Enabe Constraint constraint_name;
2、Alter Table table_name Drop Constraint constraint_name;
3、Alter Table table_name Drop Primary Key[CaASCADE];
--在修改表时添加主键约束
ADD CONSTRAINT constraint_name PRIMARY KEY (column_name1,...);
--constraint_name 主键名
--column_name1,... 字段名
ALTER TABLE XCX3
ADD CONSTRAINT PK_XCX3 PRIMARY KEY (id);
SELECT * FROM user_constraints where table_name ='XCX3'; --查看数据字段,主键名称
--更改约束的名称
RENAME CONSTRAINT old_name TO new_name;
--old_name 原名字
--new_name 新名字
--这个不止是更改,主键的名字,其他约束的也可以更改
ALTER TABLE xcx3
RENAME CONSTRAINT pk_xcx1 TO new_pk_xcx3;
--禁用|启用,主键约束
DISABLE|ENABLE CONSTRAINT constraint_name;
--DISABLE|ENABLE 第一个禁用
--constraint_name 主键名
ALTER TABLE XCX3
DISABLE CONSTRAINT new_pk_xcx3; --禁用
SELECT constraint_name, status FROM user_constraints where table_name ='XCX3'; --查看数据字段,主键是否禁用
--删除主键约束
DROP CONSTRAINT constraint_name; --语法
--constraint_name 主键名
ALTER TABLE xcx3 DROP CONSTRAINT new_pk_xcx3; --示例
DROP PRIMARY KEY [CASCADE]; -- 语法,这个也能删除主键约束,因为主键只要一个,用这个可以不带主键名称
--[CASCADE] 这个关键字可选,用于级联的删除,如果和其他表有外键约束,可以把其他表引用这个表的约束也删除掉
ALTER TABLE xcx3 DROP PRIMARY KEY CASCADE;
修改表时添加主键
alter table 表名 add constraint 主键名 primary key(字段);
alter table 表名 rename constraint 主键名 to 新主键名;
在修改表时添加主键约束
alter table userinfo add constraint pk_id primary key(id);
desc user_contraints;
// 查看主键名称
select constaint_name from user_constaints where table_name='USERINFO';
3、更改约束的名称
RENAME CONSTRAINT old_name To new_name
例:
alter table userinfo rename constraint pk_id to new_pk_id;
// 查看新改的主键约束名称
select constraint_name from user_constraints where table_name='USERINFO';
4、删除主键约束
1)禁用和启用主键约束
DISABLE|ENABLE CONSTRAINT constraint_name
例:
alter table userinfo disable constraint new_pk_id;
// 查看主键约束的状态
select constraint_name,status from user_cnstraints where table_name='USERINFO';
2)删除主键约束
DROP CONSTRAINT constraint_name
例:
alter table userinfo drop constraint new_pk_id;
// 查看主键约束
select constrint_name from user_constraints where table_name='USERINFO';
3)DROP PRIMARY KEY[CASCADE]
// 查看表结构信息
desc userinfo_p;
例:
alter table userinfo_p drop primary key;
// 查看主键约束
desc userinfo_p;
修改主键约束
在修改表时添加主键约束
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]
直接删该表的主键约束(毕竟唯一)
数据字典里还有约束的状态信息statu
禁用约束=删除约束?不是,可以通过drop删除表的约束
更改约束的名字,通用的
改约束也属于升维操作
Oracle在修改表时添加主键约束
1、修改表时添加主键约束。
语法:如图,该语句放置在ALTER TABLE表名后面的语句。
举例:修改用户表的id为主键约束,注意:这种方式前提是如果表中有数据那么该字段对应的数据是唯一的,并且不允许为空。
2、更改约束的名称。
语法:如图,它也需要放置在ALTER TABLE 表名后面。
举例:修改上面的主键名pk_id为new_pk_id。
6、删除主键约束。
禁用约束方式:暂时不使用,它也是放置在ALTER TABLE 表名后面,DISABLE禁用约束,ENABLE启用约束。
语法:如图
举例:将上面用户表的id主键约束进行禁用,这里可以通过查看user_constraints数据字典中的status来查看主键的禁用状态。
删除约束方式
语法:如图,它也是在ALTER TABLE 表名后面添加的。
删除主键约束的第二种方式
语法:如图,因为每张表主键约束只有一个,所以可以通过主键关键字来删除,其中CASCADE为可选项,它用于级联的删除,当设置了外键的时候会用到它,如果其他表引用了该字段也会将它的约束进行删除。
举例:
在修改表时添加主键约束
add constraint constraint_name primary key(column_name1,...);
更改约束的名称
rename constraint old_name to new_name
删除主键约束
disable|enable constraint constraint_name--禁用主键约束
drop constraint constraint_name
drop primary key[cascade]--cascade级联删除
Oracle在修改表时添加主键约束
1、修改表时添加主键约束。
语法:如图,该语句放置在ALTER TABLE表名后面的语句。
举例:修改用户表的id为主键约束,注意:这种方式前提是如果表中有数据那么该字段对应的数据是唯一的,并且不允许为空。
2、更改约束的名称。
语法:如图,它也需要放置在ALTER TABLE 表名后面。
举例:修改上面的主键名pk_id为new_pk_id。
6、删除主键约束。
禁用约束方式:暂时不使用,它也是放置在ALTER TABLE 表名后面,DISABLE禁用约束,ENABLE启用约束。
语法:如图
举例:将上面用户表的id主键约束进行禁用,这里可以通过查看user_constraints数据字典中的status来查看主键的禁用状态。
删除约束方式
语法:如图,它也是在ALTER TABLE 表名后面添加的。
删除主键约束的第二种方式
语法:如图,因为每张表主键约束只有一个,所以可以通过主键关键字来删除,其中CASCADE为可选项,它用于级联的删除,当设置了外键的时候会用到它,如果其他表引用了该字段也会将它的约束进行删除。
举例:
alter table userinfo rename constraint pk_id to new_pk_id;更改主键约束名称
alter table userinfo disable constraint new_pk_id;禁用主键约束
alter table userinfo drop constraint new_pk_id;删除约束
alter table userinfo_p drop primary key;通过主键名删除主键约束
alter table userinfo add constraint pk_id primary key(id);修改表时添加主键约束
disable|enable contraint contraint_name
禁用约束
drop constraint constraint_name
删除约束
drop primary key[cascade]
删除主键约束,可选项(外键用的)
rename contraint old_name to new_name
更改约束的名称
add constraint constraint_name
primary key (column_name1,...);
在修改表时添加主键约束
添加约束名称及其主键约束的名称
添加主键约束
ADD CONSTRAINT constraint_name
PRIMARY KEY(column_name1,...);
更改约束名称
RENAME CONSTRAINT old_name TO new_name
在修改表的时候添加主键约束
add constraint constraint_name
primary key(colunm_name1,...);
更改约束的名称
alter table userinfo
2 rename constraint pk_id to new_pk_id;