oracle数据库基础

数据库系统和数据库的管理系统
数据库系统=数据库的管理系统+oper操作员+硬件
Oracle的版本
8i/ 9i 10g/11g 12c(cloud)
实例和数据库的关系
实例:数据库服务启动后,在内存中的单元。
数据库:硬盘上的文件,物理介质硬盘
数据库的核心部件
PGA:
SGA:
DBWR(数据的读取和写入)
LGWR(日志文件的读取写入)
SMON (清理临时表空间)
PMON (异常中断之后的清理,处理和释放资源)
CKPT (检查点,保证数据库的一致性,这是指将脏数据写入到硬盘,保证内存和硬盘上的数据是一样的;)
5.监听文件的位置
app-----(用户名)-----product---NETWORK----ADMIN -----listener.ora
6.服务的开启顺序
先监听,再数据库服务
@echo
net start OracleOraDb11g_home1TNSListener
net start OracleServiceORCL
@pause
7.数据库用户
sys:超级管理员 管理普通的管理员和普通用户

System:普通管理员

scott:没有解锁
8.数据类型
字符串 Nvarchar2

数字 nubmer

日期和时间:Date

大二进制类型:BLOB

大文本类型 :CLOB 类型SQL SErver中的Text或者是nvarchar(max)

9.Oracle中是根据用户来隔离表的
默认情况下,当前登录的用户只能看到自己创建的表
--创建一个用户
create user happyy identified by happy

--权限
grant connect to happy
grant RESOURCE to happy
--建立一张数据表
create table userinfo
(id number primary key not null)

##如何查看该用户管理着的所有表
select * from all_tables where owner='HAPPY'

10.伪列 rowid rownum

11.如何查询stuInfo表中自然排序的第3条记录?

select * 
from(

select id,rownum rn from userinfo
)temp
where rn=3

--获取前n条数据的案例
--问题:获取教师表中的薪水排名第 3的教师信息?
select * 
from(

select temp.*, rownum rn from(select ename,sal from userinfo order by sal desc)temp 
where rownum<3

)
where rn>=2

select * from 
(select userinfo.*,rownum rn from userinfo
)temp
where rn>2

原文地址:https://www.cnblogs.com/wangdan123/p/7525269.html