Oracle的五种约束,序列,视图,集合操作

WSL2安装(详细过程) 适用于 Linux 的 windows 子系统允许开发人员直接在 Windows 上运行 GNU/Linux 环境 -- 包括大多数命令行工具、实用程序和应用程序,无需修改,而无需传统虚拟机或dualbot设置的开销。 阅读详情

一。Not null   定义在表的列上,表明该列必须要有值,不能为null
可以在建立表的时候说明    也可以在表建立后修改为not null
可以给约束指定名称。如果不指定名称,数据库会给一个系统自动指定名称,SYS_C#######
User_constraints,user_cons_columns可以查看到约束的信息

create table t1 (name char(9) not null,
telenum char(8) constraint t1_tele_nl not null);
建立表的时候指明非空约束,一个是系统命名,一个是我们命名。

建立表后指定not null约束。要使用modify语法。你不指定名称,数据库自己命名

alter table t1 modify(dname not null);

二。唯一约束UNIQUE   列的值不能重复  可以为NULL
是用索引来维护唯一的  索引的名称和约束的名称相同
建立表的时候指定UNIQUE约束

create table t1 (name char(9) UNIQUE,
mail char(8) constraint t1_mail_u UNIQUE);

建立表的时候指明唯一约束,一个是系统命名,一个是我们命名。

建立表之后指定UNIQUE约束

alter table t1 add constraint u_dname unique (dname);

三。Check检测约束

Create table t1(name varchar2(8)
check (length(name)>4),
Mail varchar2(10) );

四。Primary key 主健约束   一个表只能有一个主健  主健要求唯一并且非空
可以是联合主健,联合主健每列都要求非空
主健能唯一定位一行,所以主键也叫逻辑rowid  主健不是必需的,可以没有
主健是通过索引实现的  索引的名称和主健名称相同

create table t1(mail char(8) primary key,name char(8));

表建立后指定自命名的主健

alter table t1 add constraint pk_t1_mail primary key (mail) ;

五。foreign key外健  指定在表的列上
引用本表其它列,或其它表的其它列
被引用的列得有唯一约束或者主健约束,因为引用的是索引的键值,而不是真正的表。
目的是维护数据的完整性    核心是一列是另外一列的子集,null除外

建立主健,建立一个外健来引用主健

create table d as select * from dept;
create table e as select * from emp;

alter table d add constraint pk_d primary key (deptNO) ;
alter table e add constraint fk_e foreign key (deptno) references d(deptno) ;

六。 删除约束
任何约束都可以用约束名称来删除
Alter table ### drop constraint ****;
因为主健只能有一个,所以删除主健约束的时候也可以
Alter table ### drop primary key;
如果主健和唯一性约束被删除,自动建立的索引也会同时被清除。
Not Null约束也可以用alter table modify来删除。
删除有外健引用的主健或唯一约束的时候,外健也要被级连删除。
Alter table ### drop primary key cascade;
如果不加cascade,你删不了,报有外键在使用,不能删除。
按约束的名称来删除约束(可以删除各种约束)
Alter table t1 drop constraint sys_c03033;
非空约束的第二种删除方式
alter table t1 modify (name not null);
alter table t1 modify (name null);

七。Sequence序列
序列是一类对象  它可以自动的产生唯一的整数
通常用来产生主健的值  每个用户可以建立多个序列

CREATE SEQUENCE s1
INCREMENT BY 2
START WITH 1
MAXVALUE 10
MINVALUE -10

Select s1.nextval from dual;取序列s1的下一个值。
Select s1.currval from dual; 取序列s1的当前值。

当序列没有值在内存中时,currval属性无效,先nextval后,才会有效。

修改序列
序列的当前值一定得在最大和最小之间
步长不能为零
alter SEQUENCE s1 INCREMENT BY -2;

删除序列
Drop sequence s1;
一旦被删除,就不可以再引用序列的值。

八。View视图
使用视图为了我们的方便  增加了数据库的负担
视图下降数据库的性能  视图是查询语句的别名
视图的定义存在于数据字典中

create view v1
as select deptno,min(sal) salary from emp group by deptno

视图v1只是一个定义,没有独立的数据,数据还是存放在emp表中

修改视图
Create or replace view v1 as select * from dept;  就是将视图的定义替换

删除视图   Drop view v1;
在数据字典中将视图的定义清除   不影响基本表中的数据

九。集合操作
并集union /union all
交集INTERSECT
补集MINUS

select * from t1     union all   select * from t2;

将t1的结果和t2的结果联合显示。不排序操作,也不去掉重复的行。

select * from t1  union  select * from t2;

将t1的结果和t2的结果联合显示。含有排序操作,也去掉重复的行

select * from t1   INTERSECT  select * from t2;

将t1的结果和t2的结果的共有部分显示。含有排序操作,也去掉重复的行

select * from t1   MINUS   select * from t2;

T1表有,而t2表没有的行,去掉重复的行。

select * from t2  MINUS  select * from t1  t2表有,而t1表没有的行,去掉重复的行。

 

智能气象站:ESP32驱动的心知天气数据可视化实践 本文详细介绍了基于ESP32微控制器和心知天气API构建智能气象站的完整实践。通过Arduino开发环境,实现天气数据的获取、JSON解析与OLED屏可视化展示,涵盖硬件连接、API配置、低功耗优化及部署问题排查,为物联网开发者提供实用指南。 阅读详情

相关推荐

从充电管理芯片里‘偷师’:拆解一个PMOS双向开关电路,搞定你的固态继电器需求

本文深入解析了PMOS双向开关电路在固态继电器应用中的设计要点,重点探讨了防电流倒灌和高侧双向开关的实现技巧。通过拆解充电管理芯片中的PMOS背靠背结构,工程师可以构建高效可靠的固态开关方案,适用于智能硬件和电池管理系统。文章还提供了关键参数选择、电路优化建议及实测数据对比,助力解决电源防反接等工程难题。

weixin_33698043的博客 483

Oracle中五种约束

Oracle中五种约束:主键约束、外键约束、唯一约束、检查约束、非空约束。一、主键约束:在每一个数据表中只有一个,但是一个主键约束可以有数据表中多个列组成。创建主键约束的两种方法:(1)在创建表的直接创建主键约束,使用primary key(字段名)即可。举例:创建表tmp_test1包括字段test_id、test_name,其中test_id是主键。CREATE TABLE TMP_TEST1...

蓝星部队的博客 6949

【机械视觉】Halcon—【二、Halcon算子全面介绍(超详细版)】

Halcon 的算子(operators)按照功能被系统性地划分为多个类别,官方文档中目前(Halcon 22.11 版本)共有 19 个主分类,每个主分类下还有若干子分类。 本人在此对这19个分类的常用核心算子进行了一系列的总结,且本人在文章最后还总结了一些案例经验。 注意: ​​​​​​​跨分类调用:某些算子可能在多个分类中,但官方文档中会明确其主分类。 例如: read_image(文件操作)常被其他分类(如图像处理)的示例调用,但其核心功能是文件读取。

qq_3517289697的博客 3919

oracle常用的约束条件类型,oracle数据库的5种约束类型

oracle 数据库 数据表的5个约束类型:1.主键约束2.外键约束3.唯一约束4.检查约束5.非空约束F主键约束:用来唯一标示表中的一个列,一个表中的主键约束只能有一个,但是可以在一个主键约束中包含多个列,也称为联合约束。外键约束:用来约束两个表中列之间的关系。唯一约束:用来唯一标示表中的列。与主键约束不同的是,在一个数据表中可以有多个唯一约束。检查约束:用来约束表中列的输入值得范围,比如在输入...

weixin_31134719的博客 2485

AI编程工具深度横评2026:Claude Code × Cursor × Trae × OpenCode,7场景实测+完整免费配置

2026年AI编程工具已进入"自主Agent"时代:Claude Code以80.8% SWE-bench得分领跑编程能力,Cursor 3在用户体验和多Agent协作方面突出,GitHub Copilot保持企业市场优势。这些工具分别代表不同的使用哲学:命令行原生、IDE分支、平台集成、编辑器扩展和后起之秀。本文从开发者视角出发,通过7个真实编程场景的系统性测试,给出每款工具在具体场景下的表现评估和免费使用完整配置方案。所有代码均可直接复制运行,所有工具均有免费使用路径。

撂爪就忘的博客 5784

Blender骨骼绑定实战:如何用IK控制器让角色动作更自然(附常见问题解决)

本文深入探讨了Blender中IK控制器的实战应用,旨在解决角色动作僵硬问题。通过对比IK与FK的核心差异,详细解析了IK链的构建、参数设置及极向目标的使用,并提供了控制器定制、IK/FK无缝切换等高级技巧,帮助动画师实现更自然、符合直觉的角色动画。

weixin_29243279的博客 439

Oracle中五种约束,oracle中的五种约束

1.NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值.2.CHECK (检查)--检查在约束中指定的条件是否得到了满足.3.UNIQUE (唯一)--保证在指定的列中没有重复值.在该表中每一个值或者每一组值都将是唯一的.4.PRIMARY KEY (主键)--用来唯一的标识出表的每一行,并且防止出现NULL值,一个表只能...

weixin_35738834的博客 446

ZYNQ系列PS侧和PL侧DDR3或DDR4在AD(Altium Designer 25)中的layout布线规则约束

DDR3或DDR4的PCB布线规则通常有相对固定的要求,对应的,在PCB设计时有固定的约束设置。

FPGA艺术家的博客 790

oracle Constraint

<br />9.1约束简介<br />约束用于确保数据库数据满足特定的商业逻辑或者企业规则,如果定义了约束,并且数据不符<br /><br />合约束,那么DML操作(INSERT、UPDATE、DELETE)将不能成功执行。约束包括NOT NULL、UNIQUE、PRIMARY KEY、FOREING KEY 以及CHECK等五种类型<br />9.2定义约束<br />列级约束:<br />column [CONSTRAINT constraint_name] constraint_type<br />

715

Python爬虫实战:全自动采集银行理财产品收益率数据

本文通过Playwright动态爬虫技术,成功实现了对银行理财产品收益率数据的实时采集,并通过 Pandas 数据清洗、SQLite 存储、调度自动化等模块,构建了一个可扩展的银行理财数据抓取系统。理财非儿戏,数据做决策。掌握银行收益信息是我们迈向理性投资的第一步。希望这套工具对你有所帮助!

2201_76125261的博客 1156

微信小程序|基于小程序+云开发制作一个菜谱小程序

今天吃什么?这是一个让强迫症左右为难的问题,跟随此文基于小程序+云开发制作一个菜谱小程序,根据现有食材一键生成菜谱,省心又省力。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 1万+

Oracle 常见的五种约束

(1)定义约束 (2)列级约束\表级约束 (3)非空约束 NOT NULL 非空约束作用的列也叫强制列。顾名思义,强制列中必须有值,当然建表时候若使用default关键字指定了默认值,则可不输入。 (4)唯一性约束unique 唯一性约束可作用在单列或多列上,对于这些列或组合,唯一性约束保证每一行的唯一性。 Unique需要注意:对于unique约束来讲,索引是必须的。如果...

21号先锋者 1万+

YOLOV26详解 从原理到部署

计算机视觉领域最具影响力的目标检测框架迎来重大里程碑。2026年1月,Ultralytics 正式发布 YOLOv26——这不是一次简单的版本迭代,而是一场面向边缘计算时代的架构重构。本专栏基于 Ultralytics 官方技术白皮书、YOLO Vision 2025 大会首发内容及国际前沿研究成果,系统拆解 YOLOv26 从算法原理到工程落地的全栈技术体系。与常规教程不同,我们聚焦与,帮助你在端侧 AI 部署的实战中掌握核心竞争力。

u012133341的博客 2025

Oracle视图添加约束,Oracle创建视图的语法

Oracle创建视图的语法导读:就爱阅读网友为大家分享了多篇关于 "oracle 创建序列语法" 资料,内容精辟独到,非常感谢网友的分享,希望从中能找到对您有所帮助的内容。相关资料一 : Oracle 创建视图的语法Oracle 创建视图的语法非常重要,因为 Oracle 创建视图使我们最常用的操作之一,在学习 Oracle 创建视图的语法之前,先让我们了解一下什么是视图。视图是基于一个表或多个表...

weixin_35308269的博客 462

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Oracle之索引,视图,序列

cache|no cache:指定序列缓存,默认缓存20个,oracle会预先在内存中放置一组指定大小的序列,当使用完这些序列后再生成下一组,这样会存取得快些,但当数据库关闭等情况时,下一次再生成序列时可能会使序列间断,不是一串连续的号,当不是特别需要连续的序列时最好指定;给name字段加上索引,oracle就会对全表进行一次搜索,将每条记录的name值进行升序排列,然后构建索引条目,存储在索引段中,搜索name=’scott’ ,直接找索引排序后的结果。--这样它就会使用索引。--不能直接取当前值。

A0911X的博客 2025

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

数据库 — Oracle_DQL语句2(DECODE函数、排序函数、集合操作、视图、序列、索引、约束)

文章目录四、高级查询4.1 DECODE函数4.2 排序函数4.2.1 row_number():4.2.2 rank()4.2.3 dense_rank()4.3 集合操作(查询结果的并集、交集、差集)4.3.1 并集 — union 和 union all4.3.2 交集 — intersect4.3.3 差集 — minus五、视图、序列、索引5.1 视图5.2 序列5.3 索引六、约束6....

文泽路小男孩的博客 717

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Oracle中的伪列.约束.视图和序列

一.伪列rownum 1.理解

心有—林夕的博客 713

2.3 Oracle之DDL 语句(约束、伪列、视图、序列、同义词) 精简版

DDL Data Definition(重点) (n. 定义;[物] 清晰度;解说)用于定义数据的结构,创建,修改,删除数据库对象 一、表的增删改查 1、创建表:CREATE TABLE temp AS (SELECT * FROM emp WHERE 1==2) 创建表结构。 CREATE TABLE temp(字段名称 字段类型(默认值)) 2、删除表:DROP TABLE...

diaoli1340的博客 177

Oracle Decode函数集合操作约束

Decode函数用来实现IF~ELSE 的逻辑功能 case--when select ename,job,sal, ...

weixin_44355915的博客 447

Oracle有未提交更改_Oracle:视图_权限_表_序列_事务_约束

1. 视图视图(view),称为虚表,在数据库中不存在实体。视图本质上是对物理表(基表)的一种数据保护。让开发者或者用户只能看到基表中的部分数据。1.1 创建视图创建视图的语法create create 1.2 使用视图可以向使用表一样使用视图-- 使用视图 修改视图中的数据添加数据-- 向视图添加数据 通过视图添加数据,数据最终添加到基表中,因为视图是虚表。视图一般只是基表的部分数据,通过视图向...

weixin_39906114的博客 336

clob oracle 连接_Oracle:视图_权限_表_序列_事务_约束

1. 视图视图(view),称为虚表,在数据库中不存在实体。视图本质上是对物理表(基表)的一种数据保护。让开发者或者用户只能看到基表中的部分数据。1.1 创建视图创建视图的语法create or replace view 视图名 as querycreate or replace view v$empinfo as select e.empno,e.ename,e.job,e.mgr,e.hire...

weixin_42118161的博客 176

Oracle、MySQL如何创建视图

先简单来看一个创建视图的代表性语句: create view demo_view as select * from demo_table; 详细的往下看…… Oracle中视图的创建和处理方法 图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改。视图基于的表称为基表,Oracle的数据库对象分为五种:表,视图,序列,索引和同义词。 视

HackAge4619的博客 1638

oracle学习之表管理,约束以及视图索引同义词的操作

在oracle中,常见的数据库对象有: 表,视图,索引,序列,同义词 存储过程,存储函数,触发器,包,包体,数据库链路(datalink),快照 表是数据库的基本存储单元,以行列组成,命名规则: 1,必须以字母开头 2,长度在1~30之间 3,oracle默认存储都存为大写 创建表必须具备:权限 和 表空间 常见的数据类型如下: //创建表语法: crea...

aifeiyan0828的博客 189

Oracle 数据库创建视图

权限问题: 首先应确认登录用户有无创建视图的权限,如没有,请以DBA用户登录,赋予ceshi用户创建视图的权限; grant create view to ceshi;--1.以DBA用户登录赋予权限; create view vi_boss as select b.first_name,b.birthtime,b.icon from boss b;--2.切换回原用户创建视图 Ora...

jiang1536的博客 2361

Oracle——索引、视图、序列

索引:类似于书的目录,提高查询效率 创建索引语法: create index index_name on table_name(col_name[,col_name[,col_name,]]);create index:index索引关键字 index_name:索引名称 table_name:表名 col_name:索引列名 索引会提高查询效率,但是会降低添加和修改的执行效率 索引一般是给增删改操作比较少表上建单列索引:给某个列建一个索引,叫单行索引 联合索引:给多个列建一个索引,叫联合索引,如果联合索

m0_72036727的博客 399

3.13 Oracle之DDL 语句(约束、伪列、视图、序列、同义词) 精简版

DDL Data Definition(重点) (n. 定义;[物] 清晰度;解说)用于定义数据的结构,创建,修改,删除数据库对象 一、表的增删改查 1、创建表:CREATE TABLE temp AS (SELECT * FROM emp WHERE 1==2) 创建表结构。 CREATE TABLE temp(字段名称 字段类型(默认值)) 2、删除表:DROP TABLE person (...

刘乐乐的博客 132
上一篇: Oracle 融合语句Merge
下一篇: Oracle 修改带数据的字段类型
yanliling0909
博客等级 码龄14年 9粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值