12.1.3创建主键约束 对于数据表来说,主键约束和列具有相同的地位 都是依附于表存在的对象。因此,创建主键约束可以在创建 表时与表的列描述同时进行,也可以在表创建成功之后,手 动进行添加。 1.创建表的同时,定义主键约束 2.创建表后,添加主键约束 3.为主键命名 4.测试主键的作用
—— 1234
12.1.4修改主键约束 主键约束作为数据库的对象之一,同样可以对其进行 属性修改。修改主键约束主要包括两方面的内容:禁用/启 用主键和重命名主键。 1.禁用/启用主键 2.重命名主键
/ 1 / 2
12.1.5主键与索引 索引是数据库提供的一种可以用于提高数据性能的机 制。当用户在数据表的某列(或某些列)上创建了主键、而 在检索数据时又使用了该索引列,Oracle可以很快的捕获符 合条件的记录。而不必采用全表逐条扫描的方式。有关索引 的详细信息,可以参考第18.2节内容。 【示例12-13】在0 racle中,创建了主键之后,都会存 在一个建立在主键列上的索引。例如,表employees的主键 pk_employees建立在列employee_.id上。我们可以通过视图 user_indexes获得表employees_上索引的详细信息。 SQL>select table_name,index_name,index_type from user indexes u 2 where u.table name ='EMPLOYEES';
Oracle 18.2 12-13 Oracle employees pk_employees employee_id user_indexes employees SQL> select table_name, index_name, index_type from user_indexes u 2 where u.table_name = 'EMPLOYEES';
12.1.6总结 主键是数据库设计者最应关注的约束。一般来说,一 个拥有良好设计的数据表,往往有一个与业务无关的主键。 主键可以保证数据表中数据的唯一性,并且可以在主键列上 创建索引。 主键特点 说明 数据库操作与相关视图 约束 主键是约束的一种 user_constraints,user cons columns 主键的唯一性 主键是主码的体现 删除主键时,无需提供主键名称 主键的值不能为空 无法通过id-nul的条件来获得记录 禁止向主键列中插入空值null 主键与唯一性约束 主码来源于吗 禁止向主键列中插入重复数据(或组合) 主键与索引 主键将保证主键列上有索引 user indexes,user ind columns
12.2外键约束 通过12.1节的介绍,我们知道,主键的作用是保证数据 完整性一即保证数据的唯一性。这如同现实世界的任意两 个人,即使拥有再多的共同点,也会具有不同的身份证号加 以区分。因此,主键可以看做表中数据之间的区分。而外键 约束则适用于不同的表之间的相互参照关系
12.1 ——