oracle怎样修改表名、列名、字段类型、添加表列、删除表列、主键和unique

RENAME TEST  TO TEST1 --修改表名
ALTER TABLE SCOTT.TEST RENAME COLUMN NAME TO NAME1 --修改表列名
ALTER TABLE SCOTT.TEST MODIFY NAME1 NUMBER(20)
 --修改字段类型

ALTER TABLE SCOTT.TEST ADD ADDRESS VARCHAR2(40) --添加表列

ALTER TABLE SCOTT.TEST DROP NAME CASCADECONSTRAINTS --删除表列


unique唯一

用于指定某列的值不能重复,但是可以null;

Create table user2(id number,namevarchar2(32)unique);

SQL> insert into user2(name)values('xiaohong');

insert intouser2(name) values('xiaohong')

ORA-00001: 违反唯一约束条件(SCOTT.SYS_C005256)

注意:unique可以插入null空值,而且可以插入多行空值。


primary key主键

用于唯一的标示表行的数据,当定义主键约束后,该列不但不能重复而且不能为空。

案例:

Create table user3(id number primarykey,name varchar2(32)unique);

SQL> insert into user3(id) values(1);

insert intouser3(id) values(1)

ORA-00001: 违反唯一约束条件(SCOTT.SYS_C005257)

SQL> insert into user3(id) values(null);

insert intouser3(id) values(null)

ORA-01400: 无法将 NULL 插入("SCOTT"."USER3"."ID")


primary keyunique的区别:

1、一个表可以有多个unique,但是只能有一个主键

2、我们每张表都应该有一个主键。

3unique的值可以为空,但是主键不可以为空。

4、主键的所在列会自动创建索引,但是unique不会自动创建索引。







  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值