oracle创建表时要注意哪些约束、如下

oracle建表以及插入数据时要注意哪些规范或者说约束。比如表名不能超过30位什么的,越多越详细越好。... oracle建表以及插入数据时要注意哪些规范或者说约束。比如表名不能超过30位什么的,越多越详细越好。 展开
 我来答
完三青若阳兔嗨1C
2014-01-15 · TA获得超过185个赞
知道答主
回答量:66
采纳率:66%
帮助的人:38.2万
展开全部
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 列名 新添加的数据类型 (修改列)
hoho728
2014-01-15 · 超过15用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:30.1万
展开全部
比如主键一般要唯一,字段可以进行NOT NULL,unique,CHECK等约束,字段的类型及长度等,根据预算长度要合理,以免空间不足或者资源浪费;插入数据的时候肯定就是要字段类型对应咯
追问
表名为什么要30位以下啊,好像字段也不能超过30位。
追答

oracle本身对长度进行的限制,最长不能超过30

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qiyuexuelang
2014-01-15 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:128
采纳率:100%
帮助的人:85.9万
展开全部
主键唯一不为空
不同字段类型对应的最大长度
表关联的话,本表外键的类型和长度要和以次外键为主键的外表的主键类型长度一致
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式