oracle数据库知识总结

 

以前学习Oracle数据库的笔记加个人的一些经验总结,分享出来。

如果有不足之处还请多多指正。

-----------------------------------------------------------------------------

数据库组成:
物理结构(数据文件,控制文件,日志文件)
逻辑结构(表空间,段,区,数据块)


数据库操作
创建表空间:create tablespace tablespace_name
创建用户:create user user_name
  Identified by password
  
  
数据库权限
系统权限/用户权限
控制数据库基本存取机制/对表中数据的存取
Grant/revoke授予/撤销权限


事务的ACID特性
原子性:一个事务所包括的所有操作都是不可分割的工作单元
一致性:事务必须保证数据库的状态保持一致,事务开始的状态和结束的状态必须保持一致
隔离性:多个事务可以独立运行,不会彼此产生影响
持久性:一旦事务提交之后,数据的变化会被永久的保存下来,即使数据库崩溃也是如此


游标:将从数据库查询出来的数据以临时表的形式存在内存中
声明 打开 提取 关闭
Cursor cursor_name is select..声明游标
Open cursor_name 打开游标
Fecth cursor_name into %rowtype  提取游标一般用loop循环
Close cursor_name 关闭游标 exit when cursor_name%rowtype

 

序列:计数器,产生一系列唯一数字的数据库对象,不占空间,可作为主键
Create sequence sequence_name
Increment by n 步数,每次增加n
Start with n 从n开始计数
Maxval n 最大为 n
Cycle  循环
Cache  在内存中产生序列的个数
用法:nextval 获取序列的下一个值


伪列:显示在表中的列,但不实际存在表中
rowid:存储表中行的物理地址,也可以作为表中的唯一标识
rownum:表示表中的第几行,可以限制表查询的行数

分页显示:
Select * from(---最外层显示最小下限
Select rownum r,e.* from --第二层显示最大上限
(Select * from emp) e--最内层查询要显示的全部数据
Where rownum <= (3*2))--最大上限 页数乘以行数
Where r>=((3-1)*2)---最小下限 页数减一乘以行数

 

-----来自一个不想写代码的程序员

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值