Oracle事务和常用数据库对象

1、事务:有一组命令组成的逻辑单元,保证所有操作要么全部成功要么全部失败。
以下情况事务结束:1)显式提交(commit) 2)显式回滚(rollback) 3)ddl语句隐身提交 4)正常结束程序提交 5)非正常结束程序回滚
事务特点:ACID特性
1)原子性 2)一致性 3)隔离性 4)持久性
命令:commit 提交 rollback 回滚 set autocommit on 自动提交(回滚无效)
2、索引:快速访问数据,一个单列最多只能建一个索引
访问数据的方法:全表扫描、通过rowid(行号)、索引
索引分类:1)B树索引:(balance平衡索引)每个节点查询速度一样,默认为b树索引,唯一索引和复合索引同时也是b树索引。
2)唯一索引(unique):索引列没有重复值
3)反向键索引(reverse):反转索引列的数据值。适应建在列值连续增长的列上。不能做范围查询。
4)位图索引(bitmap):适应于列值很少的列上。占用空间小、减少响应时间,不适应频繁更改的表
5)其他索引:组合索引、函数索引
命令: 1)创建索引:create [unique|bitmap] index 索引名 on 表名(列名) [reverse]
2) 重建索引:alter index 索引名 rebulid
3)合并索引:alter index 索引名 coalesce
3、视图:虚拟表不占空间,数据存储在基表中。
语法:create [or replace替换] [force强制] view 视图名 as sql语句 [with check option约束][with read only只读]
force强制创建带错误视图:无论基表是否存在、列是否有效、表是否有权限 sql语句中可以带order by字句
with check option只能插入或更新可以访问的行
对视图的修改只能对一个基表并且不能违反约束不包含聚合函数
作用:保证数据安全性、隐藏数据的复杂性、简化命令、与基表定义的修改隔离、可以灵活的重命名列
物化视图:具有物理存储空间的特殊视图。有两个概念:查询重写和物化视图同步,同步刷新有on commit(基表更改即同步到视图)和on demand(手动)两种方式,刷新方式有complete(完全)、force(默认方式,优先fast)、fast(增量)、never(不刷新)四种
创建物化视图(需要有相应权限):1)创建物化日志:create materialized view log on 表名 with rowid;
2)创建物化视图:create materialized view 视图名 build immediate refresh fast on commit enable query rewrite as sql语句
4、序列: 用来生成连续的整数值的列值,可以升序或降序。
语法:create sequence 序列名 [start with 初始数字][increment by 增长值][maxvalue 最大值][minvalue 最小值]
可以用nextval查询下一个序列值和currval查询当前序列值,伪列的值存储在虚拟表dual中
查询序列:select sequence_name,increment_by from user_sequences
5、同义词:对象的别名,不占用空间
用途:简化sql语句、隐藏对象名称和所有者、为远程对象提供位置透明性、提供对数据库对象的公共访问。
分类:私有同义词、公有同义词
1)私有同义词:只能被当前模式用户访问必须有create [any] synonym权限
creae synonym 同义词名称 for 对象名
2)公有同义词:可以被所有的用户访问,必须有create public synonym权限
create public synonym 同义词名 for 对象名
6、分区表:将一个表分成几部分存储在不同的表空间成为一个个分区。
有点:改善表的查询性能、表更容易管理、便于备份和恢复、提高数据安全性
分区方法:范围(range)、列表(list)、散列(hash)、复合、间隔、虚拟列分区
语法:create table 表名(字段1,字段2,..) patiton by range(分区字段) (partition p1 values less then (值),partition p2 ....)
查询分区表:select from 表名 partition(p1)
命令:
alter user scott account unlock 解除对scott用户的锁定
alter user scott identified by 密码 设置scott用户的密码
grant connect,resource to scott 为scott用户授权
select username,account_status from dba_users 查用户的锁定状态
select object_name,object_type from user_objects 查用户所有对象及类别
select rowid,rownum from dept 查dept表的伪列rowid和rownum,序列中的nextval和currval都是伪列,可查不可修改
select table_name,index_name,column_name from user_ind_columns 查被索引字段
create unique index dept_index on dept(dname) 在dept表中创建dname的唯一索引
create index emp_reserve on emp(empno) reverse; 在emp表中创建empno的反向索引
alter table emp drop constraint pk_emp cascade drop index; 删除主键索引
create view v3 as select
from dept where loc=‘BOSTON‘ with check option constratint ycq; 在dept表创建v3视图,并添加约束禁止修改loc列
grant create materialized view,query rewrite,create any table,select any table to scott;授予scott有创建物化视图和任意表的权限
select 序列名.nextval,序列名.currval,user,sysdate from dual 查询下一个和当前序列号及当前用户和系统时间
grant create any synonym to scott; 授予scott用户有创建任意同义词的权限
create synonym e for emp; 为emp表创建私有同义词e
create public synonym a for emp; 为emp表创建公有同义词a
create table student (id int,name char(10)) partition by range (id) (partition p1 value less than (‘10‘),partition p2 value less than (‘20‘),partition p3 value less than (‘30‘),partition p4 value less than (maxvalue)); 创建student表,id小于10的为第一分区表...

原文地址:http://blog.51cto.com/13502820/2105325

时间: 2024-11-02 10:00:24

Oracle事务和常用数据库对象的相关文章

oracle系列(四)oracle事务和常用数据库对象

博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 前言:本次内容的相关知识点我们在学习sqlserver2008R2的时候介绍过一些,包括:事务.索引.视图等.那么今天我们学习在oracle上实现这些重要的内容,以实现数据库的优化. 一.事务 1.简介 事务是数据处理的核心,是业务上的一个逻辑单元,它能够保证其中对数据所有的操作,要么全部成功,要么全部失败.DBMS通过事务的管理来协调用

Oracle事务和常用数据对象

防伪码:一寸光阴一寸金 前言:本次内容的相关知识点我们在学习sqlserver2008R2的时候介绍过一些,包括:事务.索引.视图等.那么今天我们学习在oracle上实现这些重要的内容,以实现数据库的优化. 一.事务 1.简介 事务是数据处理的核心,是业务上的一个逻辑单元,它能够保证其中对数据所有的操作,要么全部成功,要么全部失败.DBMS通过事务的管理来协调用户的并发行为,减少用户访问资源的冲突. 1)显示提交:当事务遇到COMMIT指令时,将结束事务并永久保存所有的更改的数据. 2)显示回滚

T-SQL常用数据库对象判断语句

判断数据库 if exists(select 1 from sys.databases where name=N'[数据库名]') 判断表 if exists (select 1 from dbo.sysobjects where id = object_id(N'[dbo].[表名]') and objectproperty(id, N'IsTable') = 1) 判断字段 if exists(select 1 from syscolumns where id=OBJECT_ID(N'[db

oracle11g系列 事物和常用数据库对象

1.1. 事务 事务就是业务上的一个逻辑单元,它能够保证其中对数据所有的操作会全部成功,要么全部失败. 事务开始于一条可执行的SQ语句,继续执行事务主题,然后结束于以下的任意一种情况. 显示提交(COMMIT):当事务遇到COMMIT指令时,将结束事务并永久保存所有所有更改的数据. 显示回滚(ROLLBACK):当事务遇到ROLLBACK指令时,也将结束事务的执行,但是此时它回滚所有更改的数据到事务开始时的原始值,即取消更改. DDL语句:一旦用户执行了DDL(数据定义语言,如CREATE.DR

Oracle学习笔记九 数据库对象

Oracle 数据库对象又称模式对象,数据库对象是逻辑结构的集合,最基本的数据库对象是表. 其他数据库对象包括: 同义词 同义词是现有对象的一个别名.它的作用有: 1.简化SQL语句 2.隐藏对象的名称和所有者(隐藏原始对象内容) 3.提供对对象的公共访问 同义词共有两种类型: 公有同义词可被所有的数据库用户访问. 私有同义词只能在其模式内访问,且不能与当前模式的对象同名. 创建或替换现有同义词 create or replace synonym emp_syn for scott.emp; 删

Oracle(一)--> 数据库对象详解(文字解释,先有个小理解~)

----数据库对象:逻辑结构的集合 ---- 一.同义词:现有对象的别名 /* 作用:  简化SQL语句 隐藏对象的名称和所有者 提供对对象的公共访问 分类:*/ --公有同义词:可以被所有的数据库用户访问,本地对象和公有对象同名时,本地对象优先 create public synonym syn1 for scott.emp; select * from syn1; --私有同义词:只能被当前模式访问,且不能与当前模式下的对象同名 create synonym emp1 for scott.e

详解Oracle 12c九项数据库对象管理操作

简介 1.用户管理2.用户授权3.事务管理4.索引5.视图以及物化视图6.序列7.导入导出数据8.同义词9.分区表 实验环境 系统环境:centos7.4Oracle服务IP地址:192.168.100.99光盘挂载目录:/mnt/sr0安装相关目录:/opt 命令步骤 一.用户管理 1.登录Oracle数据库 [[email protected] ~]$ lsnrctl start #启动监听 [[email protected] ~]$ sqlplus / as sysdba SQL> st

ORACLE ADF11g:存储过程传入数据库对象

图解: 完

iOS-FMDB事务操作SQLite数据库

批量操作数据库的时候,我们经常会用到事务处理.事务是访问并可能更新数据库各种数据项的数据单元(unit),是恢复和并发的控制的基本单位. 事务具有四个属性. - 原子性(atomicity):一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做. - 一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态.一致性与原子性是密切相关的. - 隔离性(isolation):一个事务的执行不能被其他事务干扰.即一个事务内部的操作及使用的数据对并发的