Oracle数据库简介
Oracle数据库以分布式数据库为核心,多用于企业级B/S、C/S架构软件中,性能稳定,安全性强,处理大量数据能力强,是具有完整的数据管理功能的关系型数据库。
Oracle安装
没有安装过Oracle,直接使用公司的数据库建立测试库。数据库可视化工具可以使用plSQL,也可以使用jetbrains出品的data grip。两个软件的安装过程这里忽略。
Oracle体系结构
数据库:
数据库实例:通常情况下,Oracle只有一个实例ORCL。
表空间:由用户来管理。
数据文件(dbf):实际存在的,用来存放表。
Oracle和MySQL的比较
Oracle是多用户的,新建一个表空间由用户来管理负责创建表等;MySQL是多数据库的,创建一个数据库,再创建相应的表;
Oracle数据库的安全性大于MySQL,且适用大数据量数据库,价格昂贵。
-
Oracle默认行级锁,每次UD都需要提交;MySQL不同引擎采用不同锁,InnoDB默认使用行级锁;
-
Oracle的安全性大于MySQL,登录需多项验证;
-
Oracle有表空间,角色管理,快照,同义词,包和自动管理;
-
Oracle对数据库访问权限分类:
① DBA:拥有全部权限;②RESOURCE:可建实体,不可建库;③CONNECT:只能登陆不能操作。DBA可以通过grant指令下放权限。
-
临时表区别:MySQL中临时表仅对当前用户会话可见的数据库对象,一旦会话结束,表自动删除;Oracle临时表中的数据仅对将数据插入表中的用户会话可见,并且数据可能在事务或用户会话期间持续存在。
Oracle的虚表(伪表)
SELECT 1+1;
上面这句SQL语句在MySQL中是可以执行到2的,但是在Oracle中执行却会报错,提示没有找到FROM表达式。
如何让上面的语句在Oracle中执行? SELECT 1+1 FROM DUAL;
这里DUAL表是Oracle数据库提供的虚表,也叫伪表,用来