`

Oracle-主键约束、唯一约束与外键约束

 
阅读更多

1.主键约束: 一个表只能有一个主键约束。主键可以是单个字段,也可以是多个字段。无论是哪种情况,其所有字段都是NOT NULL。

2.Unique约束:一个表可以有多个Unique约束,Unique的字段可以为NULL。

3.主键与Unique:不同点在于一个表只能有一个主键约束,但是可以有多个Unique约束;主键所有字段都是not null,unique可以是null。相同点在于都能保证唯一性。

4.主键、Unique与索引:主键约束与Unique约束默认会成为索引。当主键和Unique有多个字段时,有索引前缀性问题,即where语句中的条件必须有主键或者unique的第一个字段,否则不会使用索引。

5. 外键与主键、Unique:外键必须为另外一张表(父表)的主键或者唯一索引。如果要添加记录,而父表中没有则报错。反之,如果要删除父表中的记录,而子表中有记录,也会报错。但是如果在创建外键约束时,如果使用on delete cascade,则删除父表中数据时,不报错而直接把子表关联的数据删除。如果要删除父表,则需要加上cascade constraints,此时子表的foreign key被去除,表中记录保持不变。
分享到:
评论

相关推荐

    Oracle定义约束 外键约束

    ### Oracle定义约束:外键约束详解 #### 一、引言 在数据库设计与管理过程中,维护数据的一致性和完整性是非常重要的。Oracle数据库系统提供了一系列的机制来帮助开发者和管理员达到这一目标,其中最重要的机制之一...

    oracle设置主外键即主键序列自动增长

    这行命令为 `userinfo` 表添加了一个外键约束,将 `userinfo` 表中的 `groupinfo_id` 字段与 `groupinfo` 表中的 `groupinfo_id` 字段关联起来。 #### 二、创建序列和触发器实现主键自动增长 为了实现主键的自动...

    Oracle 约束错误约束错误

    常见的约束类型包括主键约束、外键约束、唯一性约束和检查约束等。在 Oracle 中,可以使用 ALTER TABLE 语句来创建、修改或删除约束。 在本文中,我们将讨论 Oracle 中的约束错误,特别是 ORA-02292 错误,该错误...

    oracle查看主外键约束关系

    4. `left join user_constraints c on c.r_constraint_name = a.constraint_name`:这一步骤通过左连接将主键约束与对应的外键约束关联起来。Oracle中的外键约束名称会存储在主键约束的r_constraint_name字段中。 5...

    oracle-Les09约束.ppt

    主键约束用于定义表的唯一标识,如`employee_id`字段。使用`CREATE TABLE`语句时,可以明确指定某个列为主键,如示例所示的`CONSTRAINT emp_emp_id_pk PRIMARY KEY (EMPLOYEE_ID)`。 4. **FOREIGN KEY约束**:外键...

    基于Oracle的数据库完整性约束分析.pdf

    - 静态约束:反映数据库在某一状态下的合理性,如实体完整性(主键约束)和参照完整性(外键约束)。 - 动态约束:关注数据状态的转换,涉及插入、更新和删除操作时的约束条件。 5. Oracle中外键约束的处理: - ...

    oracle建表练习(主键外键)

    在score表中,我们添加了两个外键约束:“fk_sno”和“fk_cno”,分别指向student表的“学号”(sno)和course表的“课程编号”(cno)字段。这样就建立了学生选课成绩表与学生信息表、课程信息表之间的联系。 在...

    Oracle所有约束基本语法

    创建表时,可以将外键约束与字段定义一起添加,如`Create table UserInfo(StateID number constraint FK_UserInfoState references State(StateID))`。若已创建表,可使用`Alter table`添加,如`Alter table ...

    oracle主外键查询

    这里通过`constraint_type = 'P'`筛选出主键约束,并通过`table_name = '表名'`指定要查询的表。 #### 3. 查询特定表的外键及其关联表 对于查询特定表的外键信息,可以通过以下SQL语句实现: ```sql SELECT c.table...

    24.Oracle的主键和外键1

    3. **保证数据完整性**:主键约束确保了在尝试插入或更新记录时,不会出现重复的主键值,防止了数据的混乱。 在Oracle中,创建主键有以下两种方式: 1. **创建表时指定主键**:在CREATE TABLE语句中使用`PRIMARY ...

    oracle中如何创建约束?

    在创建外键约束时,需要指定一个表中的列作为外键,它必须与另一个表中的主键或唯一约束相对应。当删除或更新父表的记录时,外键约束会根据设置的行为来处理子表中的相关记录。具体行为有: - **CASCADE**:级联...

    主键与外键的创建

    同时,外键约束也可以控制级联操作,如级联删除或级联更新,使得当主键表中的数据发生变化时,关联的外键表中的数据能够相应地更新或删除。 总的来说,主键和外键在数据库设计中起着至关重要的作用,它们确保了数据...

    oracle表主键和外键的区别

    2. 防止错误:通过外键约束,可以避免在关联表中插入不存在于参照表的值,防止数据的不一致。 3. 数据依赖:外键使得一个表的数据依赖于另一个表的数据,形成数据库中的关系。 例如,如果有一个成绩表,其中也有...

    MLDN魔乐科技_Oracle课堂18_外键约束

    本课程"MLDN魔乐科技_Oracle课堂18_外键约束"深入讲解了Oracle数据库中如何利用外键来实现关系间的引用完整性。下面将详细阐述外键约束的基本原理、作用及其实现方式。 首先,外键(Foreign Key)是数据库表中的一...

    聊聊Oracle外键约束的几个操作选项

    外键约束的作用,是保证字表某个字段取值全都与另一个数据表主键字段相对应。也是说,只要外键约束存在并有效,不允许无参照取值出现在字表列中。具体在Oracle数据库中,外键约束还是存在一些操作选项的。本篇主要从...

    ORACLE-----ORACLE笔记

    约束包括NOT NULL(非空约束)、UNIQUE(唯一约束)、PRIMARY KEY(主键约束)和FOREIGN KEY(外键约束)。 4. SQL查询:SQL(结构化查询语言)是与Oracle交互的主要工具,包括SELECT语句用于查询数据,INSERT用于...

    Oracle入门到精通完整学习教程

    - 主键与外键 - 唯一性约束 - 检查约束 - 默认值 - 示例:设置员工表中的完整性约束 第二部分:进阶篇 第5章:高级SQL - 复杂查询:子查询、连接、视图 - 分组与聚合函数 - 排序与限制结果集 - 示例:根据部门...

    如何在oracle中查询所有用户表的表名、主键名称、索引、外键等

    通过设置 `constraint_type = 'P'` 来筛选出主键约束。`constraint_name` 在两个表中被用作关联字段,从而能够获取到准确的主键信息。 ### 3. 查询所有用户表的唯一性约束 #### SQL 语句: ```sql SELECT column_...

    MLDN魔乐科技JAVA培训_Oracle课堂18_外键约束.rar

    在本MLDN魔乐科技JAVA培训_Oracle课堂18_外键约束的课程中,我们将深入探讨这个主题,帮助Java开发者更好地理解和应用Oracle数据库中的外键约束。 首先,我们了解外键的基本概念。外键是一种特殊的字段,存在于一个...

Global site tag (gtag.js) - Google Analytics