oracle创建表后怎么再加非空约束

oracle创建表后怎么再加非空约束,第1张

oracle建表约束主要有以下几大类:

nn:not

null

非空约束

uk:unique

key

唯一约束

pk:primary

key

主键约束

fk:foreign

key

外键约束

ck:check

条件约束

一张表必须要有一个字段为主键,这段不能为空,并且值唯一,oracle中一般将该字段定义为数值类型,用序列为该字段插入值;其他字段的约束要根据业务需求来定。

给表中的字段添加约束可以在创建表时添加,也可以在修改时添加。

创建表必须给出表名、字段名、字段类型,约束条件不是必须的。

例如:创建如下表时

create

table

tb_constraint_1

(

empno

number

primary

key,

--主键约束

ename

varchar2(20)

not

null,

--非空约束

email

varchar2(60)

unique,

--唯一约束

sal

number(5)

check(sal>1500),

--核查约束

deptno

number(4)

references

tb_dept(deptno)

--外键约束

)

修改已创建表中某个字段的约束:

alter

table

tb_constraint_1

add

constraint

yueshumingzi

unique(ename

)--修改姓名字段值必须唯一

创建表的外键约束时,外键字段的类型必须和关联表的主键的类型一致。

表名和字段名的长度oracle默认约定为长度不能大于30个字符

创建好的表,字段可以修改,以下是修改

添加表

删除表字段

格式:

alter

table

表名

add

新列列名

列数据类型

[default

0

not

null]

(添加列默认值为0)

alter

table

表名

drop

列名

(删除列)

alter

table

表名

alter

column

列名

新添加的数据类型

(修改列)

可以是让oracle 忽略就存在表内的重复值,并且新插入的数据遵守唯一约束.

*** 作步骤

1.检查当前oracle 唯一约束创建的索引的unique的列的值. 必须是not unique.

2.如果是unique这要删除该约束重新建,新建的约束先disable,并且要deferred

3.这时候检查oracle 唯一约束创建的索引的unique的列的值你会发现该索引时not unique

4.接下来你就可以enable 该约束了

明天天帖出示例,现在没时间


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11655130.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存