Oracle详解(Ⅰ):世界上目前已知最好的关系型数据库

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: OracleOracle数据库的体系结构数据库:Oracle数据库是数据的物理存储,这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。
img_943f674d603a4619707aad9cf0506c4e.png
Oracle

Oracle数据库的体系结构

数据库:

Oracle数据库是数据的物理存储,这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。其实Oracle数据库的概念和其他数据库不一样,这里的数据库是一个操作系统只有一个库。可以看多是Oracle就只有一个大数据库

实例:

一个Oracle实例(Oracle Instance)有一系列的后台进程(BackGoundProcesses) 和内存结构(Memory Structures)组成,一个数据库可以有N个实例。

数据文件(dbf):

数据文件是数据库的物理存储单位,数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中,而一个表空间可以由一个或者多个数据文件组成,一个数据文件只能属于一个表空间,一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。

表空间:

表空间是Oracle对物理数据库上相关数据文件(ORA或者DBF文件)的逻辑映射,一个数据库在逻辑上被划分成一个到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构,每个数据库至少有一个表空间(称之为System表空间)每个表空间由同一个磁盘上的一个或者多个文件组成,这些文件叫数据文件(datafile)一个数据文件只能属于一个表空间。


img_6ec7178a87629def0e631aa5ba256034.png
表空间
用户:

用户是在实例下建立的,不同的实例中可以建相同名字的用户。


img_14f54238f3de847eeef5dae1b0a8c22b.png
架构图

基本查询

sql书面概念:
DML (数据库操作语言)
INSERT UPDATE DELETE
DDL (数据库定义语言)
CREATE DROP
DCL(数据库控制语言)
GRANT REVOKE

1.查询语法

select *|列名  from 表名;

2.别名用法

select 列名 别名,...  from 表名;

3.去重

select distinct *|列名  from 表名;

4.查询中的四则运算

eg: 查询员工的年薪
select ename,sal*12 income from emp;

5.连接符 ||

字符串连接查询 等同于mysql中的 concat
img_b3b6a75f620610fc0928cae3bfe312df.png
Mysql concat

img_6698312866656bb67b32800312f2792d.png
Oracle连接符

条件查询和排序

使用where语句对结果进行过滤

select *|列名  from 表名 where ....(条件:比较运算符)
其他比较运算符

between...and... (在两值之间,包含边界)
IN(set) 等于值列表中的一个
LIKE 模糊查询
IS NULL 空值

逻辑运算符

AND 逻辑并
OR 逻辑或
NOT 逻辑否

Where 语句示例

IS NOT NULL


img_d32fc19f45dd7e4bfaea9a33d3d2e661.png
IS NOT NULL

IS NULL


img_e78033bbd51c54869548df73a947c9b6.png
IS NULL
img_a9bbfeff6aead2ca9af4848a90bff81f.png
多个条件同时满足时使用AND
img_1d865e1f87b9ed79bc720ede8953f3ef.png
多个条件或满足使用OR
img_b52ff468e2150ed8d114761d2737f5bb.png
not的使用
img_d82fe6c0ed8279e14a67013d2db1b8a7.png
范围限制
img_b6f44b19cc62c0c907aa1a322fb333e7.png
between and
img_8ebd7b14034cfa261cd1945943bf18f9.png
指定范围

模糊查询

img_17493522077306db8f841ede8e6611d8.png
like
img_5222287647aa4d82266065f19e4b4fc9.png
不等于

OrderBY

img_94839c7e4d027d932da93602359c6d0a.png
默认升序
排序中的空值问题

排序的时候可能出现null时就会产生问题,使用nulls first nulls last 来指定null值得显示位置

单行函数

接收字符输入返回字符串或者数值,dual是伪表
1.字符串的连接可以使用建议使用|| 而不是concat
select concat(String,String) from dual;
2.字符串的截取,使用substr,第一个参数是源字符串,第二个参数是开始索引,第三个参数是长度,开始索引使用1和0效果相同
3.获取字符串的长度
length (String) from dual;
4 字符串替换,第一个参数是源字符串,第二个参数被替换的字符串,第三个是替换字符串
select replace('String','1','o')from dual;

数值函数

ROUND:四舍五入
ROUND(100.333,2)
TRUNC:截断
TRUNC(100.33,2)
MOD:求余
MOD(100,30)

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
7天前
|
SQL Oracle 关系型数据库
【Oracle】玩转Oracle数据库:装上去,飞起来!
本文是一篇关于Oracle数据库安装和使用的博文摘要。作者以轻松幽默的笔调介绍了自己在实验中掌握的Oracle数据库基本操作,包括使用组件查看命令、配置数据库监听器等。作者也分享了在实验中遇到的一些有趣问题,如SQL语句缺少分号导致的意外错误。此外,作者还强调了登录sys用户和启动实例加载数据库的注意事项,并鼓励读者面对挑战时保持乐观,不断提升自己的能力。整体风格风趣严谨,引人入胜。
63 0
|
24天前
|
存储 Java 数据库
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数(二)
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数
25 0
|
24天前
|
SQL Oracle 关系型数据库
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
54 0
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
|
2天前
|
开发框架 Oracle 关系型数据库
ASP.NET实验室LIS系统源码 Oracle数据库
LIS是HIS的一个组成部分,通过与HIS的无缝连接可以共享HIS中的信息资源,使检验科能与门诊部、住院部、财务科和临床科室等全院各部门之间协同工作。 
16 4
|
3天前
|
Oracle 关系型数据库 数据处理
某教程学习笔记(一):10、oracle数据库注入
某教程学习笔记(一):10、oracle数据库注入
4 0
|
24天前
|
存储 Oracle 关系型数据库
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
oracle数据库ASM磁盘组掉线,ASM实例不能挂载。数据库管理员尝试修复数据库,但是没有成功。
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
|
24天前
|
存储 SQL Java
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数(一)
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数
25 0
|
24天前
|
SQL 存储 Oracle
JAVAEE框架数据库技术之11 oracle入门
JAVAEE框架数据库技术之11 oracle入门
110 0
JAVAEE框架数据库技术之11 oracle入门
|
26天前
|
Oracle 关系型数据库 Java
从 Oracle 数据库的 socket 中读取数据时,没有更多的数据可供读取。这可能是由于以下原因导致的:
【1月更文挑战第26天】【1月更文挑战第125篇】从 Oracle 数据库的 socket 中读取数据时,没有更多的数据可供读取。这可能是由于以下原因导致的:
16 1
|
1月前
|
SQL 存储 Oracle
oracle如何定期备份数据库sql文件
【1月更文挑战第7天】oracle如何定期备份数据库sql文件
48 8

推荐镜像

更多