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数据库中新增一个字段,并且该字段不能为空,执行新增方法,报错

因为表里面已经有数据了,就不能添加非空列了,除非指定默认值

或者先将该字段设置为空,然后把这个值有关的旧数据设置一个默认值,再将此字段更改属性“不能为空”。


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

原文地址:https://54852.com/bake/11873825.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存