iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >【Oracle Database】数据库约束管理
  • 827
分享到

【Oracle Database】数据库约束管理

2024-04-02 19:04:59 827人浏览 独家记忆
摘要

主键约束 sql> alter table customers add constraint customers_pk primary key (customer_id);   Table alter

主键约束
sql> alter table customers add constraint customers_pk primary key (customer_id);  
Table altered.

col constraint_name for a30
col constraint_type for a15
col table_name for a30
col index_name for a30

SQL> select constraint_name,constraint_type,table_name,index_name,status from dba_constraints where constraint_type = 'P' and owner = 'SOE';
CONSTRAINT_NAME                CONSTRAINT_TYPE TABLE_NAME                     INDEX_NAME                     STATUS
------------------------------ --------------- ------------------------------ ------------------------------ --------
CUSTOMERS_PK                   P               CUSTOMERS                      CUSTOMERS_PK                   ENABLED

col constraint_name for a30
col constraint_type for a15
col table_name for a30
col column_name for a30

SQL> select dba_cons_columns.constraint_name,
dba_cons_columns.table_name,
dba_cons_columns.column_name,
dba_cons_columns.position
from dba_constraints join dba_cons_columns
on (dba_constraints.constraint_name = dba_cons_columns.constraint_name)
where constraint_type = 'P' and dba_constraints.owner = 'SOE';
CONSTRAINT_NAME                TABLE_NAME                     COLUMN_NAME                      POSITION
------------------------------ ------------------------------ ------------------------------ ----------
CUSTOMERS_PK                   CUSTOMERS                      CUSTOMER_ID                             1

禁用约束
SQL> alter table customers disable constraint customers_pk;

启用约束
SQL> alter table customers enable constraint customers_pk;

删除约束
SQL> alter table customers drop constraint customers_pk;

外键约束
SQL> alter table orders add constraint orders_customer_id_fk foreign key (customer_id) references customers (customer_id);
Table altered.

col constraint_name for a30
col constraint_type for a20
col table_name for a20
col r_constraint_name for a30
col delete_rule for a15

SQL> select constraint_name,constraint_type,table_name,r_constraint_name,delete_rule,status from dba_constraints where constraint_type = 'R' and owner = 'SOE';
CONSTRAINT_NAME                CONSTRAINT_TYPE      TABLE_NAME           R_CONSTRAINT_NAME              DELETE_RULE     STATUS
------------------------------ -------------------- -------------------- ------------------------------ --------------- --------
ORDERS_CUSTOMER_ID_FK          R                    ORDERS               CUSTOMERS_PK                   NO ACTION       ENABLED

col child_table_name for a20
col father_table_name for a20
col child_column_name for a20
col father_column_name for a20

SQL> select dba_cons_columns.constraint_name,
dba_cons_columns.table_name as child_table_name,
dba_cons_columns.column_name as child_column_name,
dba_cons_columns.position,
dba_indexes.table_name as father_table_name,
dba_ind_columns.column_name as father_column_name
from
dba_constraints join dba_cons_columns on (dba_constraints.constraint_name = dba_cons_columns.constraint_name)
join dba_indexes on (dba_constraints.r_constraint_name = dba_indexes.index_name)
join dba_ind_columns on (dba_indexes.index_name = dba_ind_columns.index_name) where constraint_type ='R' and dba_constraints.owner = 'SOE';
CONSTRAINT_NAME                CHILD_TABLE_NAME     CHILD_COLUMN_NAME      POSITION FATHER_TABLE_NAME    FATHER_COLUMN_NAME
------------------------------ -------------------- -------------------- ---------- -------------------- --------------------
ORDERS_CUSTOMER_ID_FK          ORDERS               CUSTOMER_ID                   1 CUSTOMERS            CUSTOMER_ID

1、普通外键约束(如果存在子表引用父表主键,则无法删除父表记录)
SQL> alter table orders add constraint orders_customer_id_fk foreign key (customer_id) references customers (customer_id);
2、级联外键约束(可删除存在引用的父表记录,而且同时把所有有引用的子表记录也删除)
SQL> alter table orders add constraint orders_customer_id_fk foreign key (customer_id) references customers (customer_id) on delete cascade;
3、置空外键约束(可删除存在引用的父表记录,同时将子表中引用该父表主键的外键字段自动设为NULL,但该字段应允许空值)
SQL> alter table orders add constraint orders_customer_id_fk foreign key (customer_id) references customers (customer_id) on delete set null;


您可能感兴趣的文档:

--结束END--

本文标题: 【Oracle Database】数据库约束管理

本文链接: https://www.lsjlt.com/news/37648.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 【Oracle Database】 数据库对象管理
    创建表 SQL> create table customers       ( customer_id           NUMBER(12) ,         cust_first_name  ...
    99+
    2024-04-02
  • 【Oracle Database】 数据库表空间管理
    创建表空间 SQL> create tablespace soe datafile '/u01/app/oracle/oradata/wallet/soe01.dbf' size 1024M exte...
    99+
    2024-04-02
  • 【MySQL数据库】一约束
    🍁博客主页:👉@不会压弯的小飞侠 ✨欢迎关注:👉点赞👍收藏⭐留言✒ ✨系列专栏:👉MySQL数据库专栏 ✨欢迎加...
    99+
    2023-09-28
    数据库 mysql java
  • Oracle数据库中的约束是什么
    在Oracle数据库中,约束是用来确保数据完整性和一致性的规则。约束可以应用在表的列级别或表级别,常见的约束类型包括: 主键约束:...
    99+
    2024-03-02
    Oracle
  • MySQL数据库的约束
    文章目录 一、约束是什么?二、约束的具体操作Not NULLUNIQUE约束的组合使用PRIMARY KEYDEFAULTFOREIGN KEY 一、约束是什么? 约束就是,在创建表的时候,对表设置一些规则,只有满足这些规...
    99+
    2023-08-30
    数据库 mysql sql
  • 【MySQL】数据库的约束
    MySQL 数据库的约束 文章目录 MySQL 数据库的约束01 数据库的约束1.1 约束类型1.1.1 NOT NULL1.1.2 UNIQUE1.1.3 DEFAULT1.1.4 PRIM...
    99+
    2023-09-12
    数据库 mysql adb
  • Oracle数据库中怎么创建字段约束
    本篇文章给大家分享的是有关Oracle数据库中怎么创建字段约束,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。非空约束唯一约束对字段的取值的约束...
    99+
    2024-04-02
  • Oracle违反约束数据的workaround
    最近为测试做一些数据导入,其中存在一些主子表,由于种种原因,子表有些记录,外键值在主表无记录,导致数据导入过程中,无法创建外键, Failing sql is: ALTER TABLE &quo...
    99+
    2024-04-02
  • MySQL 数据库的约束及数据表的设计原理
    目录1. 数据库的约束1.1 介绍1.2 约束类型1.3 not null1.4 unique1.5 default1.6 primary key1.7 foreign key1.8...
    99+
    2024-04-02
  • MySQL数据库约束,表的设计
    ❤️Author: 老九 ☕️个人博客:老九的CSDN博客 🙏 个人名言:不可控之事 乐观面对 😍 系列专栏:MySQL通关系列 文章目录 数据库约束no...
    99+
    2023-09-17
    数据库 mysql database
  • 理解阿里云数据库中的外键约束
    外键约束是数据库中一种重要约束,用于保证数据的完整性。在阿里云数据库中,外键约束是一种非常重要的功能,可以帮助我们确保数据的一致性和准确性。本文将详细解释什么是外键约束,如何在阿里云数据库中创建和使用外键约束,以及外键约束的重要性。 一、外...
    99+
    2023-12-17
    阿里 数据库中
  • MySQL数据库表中的约束详解
    目录mysql表中的约束(constraint)约束分类非空约束唯一性约束复合约束主键约束自增列-AUTO_INCREMENT外键约束FOREIGN KEY约束CHECK约束DEFAULT约束MySQL表中的约束(con...
    99+
    2023-03-02
    MySQL表中的约束 MySQL数据库约束 MySQL约束的使用
  • 从 MySQL 数据库获取约束列表?
    要从 MySQL 数据库获取约束列表,请使用以下语法 -select *from information_schema.table_constraints where constraint_schema = 'y...
    99+
    2023-10-22
  • MySQL数据库的约束使用实例
    目录1. NULL约束2. UNIQUE(唯一约束)3. DEFAULT(默认值约束)4. PRIMARY KEY(主键约束)5. FOREIGN KEY(外键约束)数据库的约束就是关系型数据库给我们提供的一种"...
    99+
    2022-12-03
    MySQL数据库的约束 MySQL数据库约束语句
  • MySQL数据库的约束限制详解
    目录一、介绍二、操作添加删除外键联级操作一、介绍 数据库的约束是对表中数据进行的一种限制,为了保证数据的正确性、有效性、完整性。 无论是在添加数据还是在删除数据的时候,都能提供帮助。...
    99+
    2022-11-13
    MySQL数据库 MySQL约束
  • MySQL数据库约束类型有哪些
    这篇文章主要介绍了MySQL数据库约束类型有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL数据库约束类型有哪些文章都会有所收获,下面我们一起来看看吧。数据库中的约束,顾名思义即是对插入数据库中的数...
    99+
    2023-06-27
  • MySQL数据库中数据约束的示例分析
    这篇文章主要介绍了MySQL数据库中数据约束的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。为了防止不符合规范的数据进入数据库,在用...
    99+
    2024-04-02
  • MySQL数据库怎么给表设置约束
    今天小编给大家分享一下MySQL数据库怎么给表设置约束的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、PK(主键约束)1、...
    99+
    2023-06-29
  • 【MySQL】一文带你了解数据库约束
    文章目录 1. 约束类型2.PRIMARY KEY:主键约束3.FOREIGN KEY:外键约束4.NOT NULL:非空约束5.UNIQUE:唯一约束5.DEFAULT:默认值约束6.总结 1. 约束类型 作用: 数据...
    99+
    2023-08-17
    数据库 mysql sql
  • 如何理解关系型数据库的约束机制
    这篇文章将为大家详细讲解有关如何理解关系型数据库的约束机制,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一. 关系型数据库市场上主流的关系型数据库:Orac...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作