Oracle详解(Ⅰ):世界上目前已知最好的关系型数据库-阿里云开发者社区

开发者社区> Mr.Elliot> 正文

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

简介: Oracle Oracle数据库的体系结构 数据库: 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)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【sessions】Oracle中sessions和processes的大小关系(10g和11g不同)
【sessions】Oracle中sessions和processes的大小关系(10g和11g不同) 1  BLOG文档结构图 BLOG_Oracle_lhr_【sessions】Oracle中sessions和processes的大小关系(10g和11g不同).
997 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
4053 0
Linux 下 Oracle随系统自动启动和关闭
Linux 下实现Oracle随系统自动启动和关闭 实现如下目的:     a、实现开启oracle实例自启动     b、关闭操作系统或重启操作系统前能够正常关闭Oracle数据库 a、实现系统启动oracle实例自启动步骤: 1...
790 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
4397 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
10760 0
Oracle高可用概述(HA与RAC的关系解惑)
看到leonarding大神总结的有关Oracle高可用性的概述,之前开会的时候,有人也提到过Oracle HA、RAC等等,当时这些概念不是特别清楚,下来查过后感觉HA是一个概念,像RAC、Stream Replication等是一种HA的实现手段,现在又碰巧看到这篇总结,更加确信了这一点,凡事都要讲实力,都需要积累。
1116 0
【体系结构】有关Oracle SCN知识点的整理
                                                                                                                            ...
629 0
+关注
Mr.Elliot
技术爱好者
43
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载