`
lifaming15
  • 浏览: 64727 次
  • 来自: ...
文章分类
社区版块
存档分类

Oracle约束介绍

 
阅读更多

Oracle数据库约束分为以下几种:

1:not null和check约束

2.PK主键约束

3.Unique唯一值约束

4.FK外键约束

下面介绍了以上4种约束的创建,添加,删除方法:

1.check约束

当创建约束时,系统会自动给约束取名,也可用户自己取名

>SQL create table person(id int, sex varchar2(50)) constraint person_constraint check(sex in('男','女'));

对于已存在表,添加约束

>SQL alter table person add constraint person_constraint check(sex in ('男','女'));

删除约束

>SQL alter table person drop constraint person_constraint;

2.主键约束

>SQL create table person(id int primary key,name varchar2(50));

主键约束功能:

a.保证此列的唯一值

b.一个表中只能有唯一的primary key

c.此列不允许null值

d.可以将主键设定到多个列上(复合主键),如:create table person(firstName varchar2(50), lastName varchar2(50), constraint x_m primary key(firstName,lastName));

删除主键约束:

>SQL alter table person drop primary key;

3.unique约束

功能:

a,允许有无数的null值

b.在一个表中可以有多个unique约束

c.值是唯一的

4.外键约束

外键约束只能是主键列中任意一个

>SQL create table product(id int, p_name varchar2(50));

>SQL create table price(id int, p_id int , price int, constraint p_f_refer_product_p_id foreign key(p_id) references product(id));

对于已存在表:

>SQL alter table price add constraint refer_product_p_id foreign key(p_id) references product(id);

如果要delete product 表中的一条记录,当该记录有对应价格记录时,普通方法不能删除,需要使用cascade(级联完整性(主表的行改变,从表也相应改变))

方法:

在创建表时或修改时加上on delete cascade

如:alter tavle price add constraint refer_product_p_id foreign key(p_id) references product(id) on delete cascade;

有时候,我们要向子表中添加数据,而不想让子表检查约束,我们必须先临时关闭约束,再添加数据.

如:

>SQL alter table price disable constraint refer_product_p_id;

>SQL insert into price values...

>SQL alter table price enable novalidate constraint refer_product_p_id;

分享到:
评论

相关推荐

    Oracle 约束错误约束错误

    Oracle 约束错误约束错误 Oracle 中的约束错误是指在数据库中违反了约束条件,导致数据无法修改或删除的错误。这种错误通常发生在父表和子表之间存在关联关系时,试图删除或修改父表中的记录,但子表中存在对应的...

    Oracle约束详解 Oracle约束详解

    Oracle约束详解

    Oracle所有约束基本语法

    Oracle数据库系统是世界上最广泛使用的数据库管理系统之一,它提供了丰富的数据完整性约束来确保数据的准确性和一致性。在Oracle中,约束是定义在表上的规则,用于限制可以存储在表中的数据类型和值。以下是对Oracle...

    oracle约束详解

    ### Oracle约束详解 在Oracle数据库管理系统中,约束是用于确保数据完整性和一致性的规则或条件。这些约束可以被定义在表级别的字段上,用来限制存储在表中的数据类型。通过实施约束,我们可以确保数据的质量,并...

    oracle约束和索引笔记

    Oracle约束和索引是数据库设计和优化的核心概念。通过正确地应用约束,可以确保数据的准确性和一致性;而合理地创建和管理索引,则能够显著提升查询速度,提高整体系统性能。作为数据库管理员或开发者,理解和熟练...

    Oracle的约束【Constraint】

    #### 约束类型介绍与管理 Oracle数据库通过约束(Constraint)确保数据的一致性和完整性,这是数据库设计的重要组成部分。对于初学者而言,理解Oracle中的不同约束类型及其管理方式至关重要。 ##### 约束状态 ...

    Oracle约束详解.pdf

    1 1 、 e oracle 数据库有 5 5 种约束: :y primary n key,foreign key,unique,check,not null 2 2 、 如果某个约束只作用单独的字段,即可以在列级定义约束;也可以在表 级定义约束。但是如果某个约束作用于多...

    Oracle 关闭所有约束 存储过程

    应用于存在外键或其他约束时,需要跳过约束条件将数据导入表中,可使用该存储过程临时关闭或开启数据约束, 使用时可根据实际情况进行修改

    oracle的索引和约束详解

    #### 二、Oracle约束概述 约束是用于确保数据完整性的规则集合,它们可以在表级或列级定义,并且在数据插入、更新或删除时强制执行这些规则。 ##### 2.1 主键约束(PRIMARY KEY) 主键约束用于标识表中的每一行...

    Oracle约束基本语法 修改表结构

    本文将深入探讨Oracle约束的基本语法以及如何修改表结构。 首先,Oracle约束可以分为五种类型: 1. **NOT NULL约束**:不允许字段值为空,确保了字段必须有值。 2. **UNIQUE约束**:确保字段中的值是唯一的,但...

    09oracle约束.pptx

    Oracle约束是数据库管理系统中用于确保数据完整性的重要机制。在Oracle数据库中,约束主要分为三类:域完整性、实体完整性和参照完整性。 1. 域完整性(Domain Integrity): 域完整性关注的是单个列的数据有效性...

    oracle约束键解析.docx

    Oracle约束键解析主要涉及到数据库设计中的关键概念,用于确保数据的完整性和一致性。本文将详细介绍四种主要的约束类型:主键约束(Primary Key)、唯一约束(Unique)、外键约束(Foreign Key)和检查约束(Check...

    oracle约束

    详细介绍了oracle的常见约束,表级约束(主键),列级约束,唯一性约束,外键约束,并介绍了如何给相应的约束命名

    oracle基本约束语法

    在Oracle数据库中,约束是用于确保数据完整性的规则或规定,它们定义了表中的数据必须遵循的特定条件。约束可以在创建表时定义,也可以在表已经存在后通过修改表结构来添加。以下是对Oracle数据库中四种主要约束类型...

    Oracle定义约束 外键约束

    本文将详细介绍如何在Oracle数据库中使用**外键约束**来确保数据的参照完整性。 #### 二、什么是外键约束 外键约束是一种用于保证两个表之间数据一致性的机制。当两个表存在关联时,通过在外键表(子表)中设置外键...

    oracle新手入门指导之五—ORACLE约束.txt

    ### Oracle新手入门指导之五——Oracle约束 #### 约束概述 在Oracle数据库中,约束是一种用于确保数据完整性的机制。它可以帮助我们定义表中的列必须满足的规则,从而确保数据的一致性和准确性。Oracle提供了多种...

    oracle 数据库约束笔记

    Oracle 数据库约束笔记 Oracle 数据库约束是一种机制,用于确保数据库数据的完整性和一致性。约束是指在数据库中强制执行某些规则,以确保数据的正确性和一致性。Oracle 数据库提供了多种类型的约束,包括 NOT NULL...

Global site tag (gtag.js) - Google Analytics