第二章 Oracle数据库应用

第二章   Oracle数据库应用
2.1 表空间和用户权限下管理
    2.1.1 表空间
        2.1.1.1 分类:
            永久性表空间
            临时性表空间
            撤销表空间
        2.1.1.2 表空间的目的
            对不同的用户分配不同的空间
            将不同的数据文件创建到不同的磁盘
        2.1.1.3 创建表空间
            2.1.1.3.1 语法:
                CREATE TABLESPACE tablespacename
                DATAFILE ‘filename‘ [SIZE integet [K|H]]
                [AUTOEXTEND [OFF | ON]];
        2.1.1.4 删除表空间
            2.1.1.4.1 语法:
                DROP TABLESPACE tablespacename;
    2.1.2 自定义用户权限
        2.1.2.1 Sys:超级用户
        2.1.2.2 System:系统管理员
        2.1.2.3 Scott:示范用户
    2.1.3 数据库权限管理
        2.1.3.1 系统权限:
            2.1.3.1.1 定义:在数据库中执行某种系统级别的权限操作
            2.1.3.1.2 常用系统权限:
                        CREATE SESSION:连接到数据库
                        CREATE TABLE:创建表
                        CREATE VIEW:创建实体
                        CREATE SEQUENCE:创建序列
        2.1.3.2 对象权限
            2.1.3.2.1 定义:用户对数据库中具体对象所拥有的权限
            2.1.3.2.2 获取权限途径:
                      CONNECT:连接到数据库的用户,特别是不需要创建表的用户,通常授予该权限;
                      RESOURCE:更为可靠的和正式的数据库用户可授予该角色;
                      DBA:数据库管理员,用于管理数据库的最高权限;
            2.1.3.2.3 授予权限的语法:
                      GRANT 权限 | 角色 TO 用户;
            2.1.3.2.4 撤销权限的语法:                            
                      REVOKE 权限 | 角色 FROM 用户;
            2.1.3.2.5 数据库用户安全设计原则
                        1、按最小分配原则
                        2、用户分为管理,应用,维护,备份四类
                        3、不允许使用Sys和system用户建立数据库应用对象
                        4、禁止GRANT dba TO user;
2.2 序列
    2.2.1 创建序列
            语法:
                CREATE SEQUENCE sequence_name
                [START WITH integer]    ---->指定要生成的第一个序列号
                [INCREMENT BY integer]    ---->指定序列号之间的间隔
                [MAXVALUE integer | NOMAXVALUE]    ---->指定序列可以生成的最大值,如果指定了NOMAXVALUE ,最大为10*27
                [MINVALUE integer | NOMINVALUE]    ---->指定序列可以生成的最小值,如果指定了NOMINVALUE ,最小为10*26
                [CYCLE | NOCYCLE]    ---->预先分配一组序列号
                [CACHE integer | NOCACHE];    ---->不会分配一组序列号,如果两个都忽略,系统默认缓存20个序列号
    2.2.2 访问序列
            NEXTVAL:第一次使用时,返回该序列的初始值
            CURRVAL:返回序列的当前值
    2.2.3 更改序列
            语法:
                ALTER SEQUENCE [schema.]sequence_name
                [INCREMENT BY integer]
                [MAXVALUE integer | NOMAXVALUE]
                [MINVALUE integer | NOMINVALUE]
                [CYCLE | NOCYCLE]
                [CACHE integer | NOCACHE];
            注:不能修改序列的START WITH参数,修改序列时,应注意升序序列的最小值应小于最大值;
    2.2.3 删除序列
            语法:
                DROP SEQUENCE [schema.]sequence_name
                例:DROP SEQUENCE seql;--->从数据库中删除seql序列
    2.2.3 使用序列    
2.3 同义词
    2.3.1 同义词的用途
        1.简化SQL语句
        2.隐藏对象的名称和所有者
        3.位分布式数据库的远程对象提供了位置透明性
        4.提供对对象的公共访问
    2.3.2 同义词分类
        2.3.2.1 私有同义词
            1、创建语法:
                CREATE [OR REPLACE] SYNONYM [schema.]synonym_name--->同义词名称
                FOR [schema.]object_name    --->在同义词存在的情况下替换该同义词
        2.3.2.2 公有同义词
            1、创建语法:
                CREATE [OR REPLACE] PUBLIC SYNONYM [schema.]synonym_name
                FOR [schema.]object_name
        2.3.2.3 私有同义词和公有同义词的区别            
            1、私有同义词只能在当前模式西访问,不能和当前模式的对象同名
            2、公有同义词可被所有的数据库用户访问            
            3、创建同义词需要拥有一定的权限
    2.3.2 删除同义词
        语法:
            DROP [PUBLIC] SYNONYM [schema.]synonym_name
2.4 序列
    2.4.1 什么是序列?
        定义:序列是与表关联的可选结构,是一种快速访问数据库的途径,可提高数据库性能
    2.4.2 序列的分类
        2.4.2.1、分区或非分区索引        单列或组合索引
        2.4.2.2、B树索引(标识索引)        唯一或非唯一索引
        2.4.2.3、正常或反向键索引        基于函数索引
        2.4.2.4、位图索引
        2.4.2.5 B树索引
                语法:
                    CREATE [UNIQUE] INDEX index_name ON table_name(column_list)
                    [TABLESPACE tablespace_name]
                    UNIQUE:指定唯一索引
                    index_name:创建索引的名称
                    column_list:在上创建索引的列名列表,可基于多列
        2.4.2.6 唯一或非唯一索引
                唯一索引定义:定义索引的列中任何两行都没有重复值
                非唯一索引定义:    单个关键字可以有多个与其关联的行
        2.4.2.7 反向键索引    
                定义:保存序列顺序的同时反转索引列的字节
        2.4.2.8 位图索引
                优点:1、对于大批即时查询
                      2、相比其他索引技术占用空间减少
                      3、配置低的终端硬件上,性能也很好
        2.4.2.9 其他索引
                    组合索引:在表内多列上创建,索引列不必和表中的列顺序一样
                    基于函数索引:使用的函数或表达式时间正在建立的索引的标识的一列或多列,则创建基于函数索引
    2.4.3 创建序列原则
            1~8 教材58~59页
    2.4.4  删除索引
        2.4.4.1 DROP INDEX语句
                例:DROP INDEX 索引名;
        2.4.4.2 何时删除索引
                1、应用程序不再需要索引
                2、执行批量加载钱删除索引
                3、索引已经损坏
    2.4.5  重建索引    
        2.4.5.1  ALTER INDEX...REBUILD语句
                例:ALTER INDEX 索引名 REBUILD NOREVERSE;
        2.4.5.2    何时重建索引
                1、用户表被移动到新的表空间后
                2、索引中已包含很多已删除的项
                3、需将现有的正常索引转换成反向键索引
2.5 分区表
    2.5.1 什么分区表
        2.5.1.1 定义:把一个表中的所有行分为几个部分,并储存在不同的位置,被分区的表称为分区表
        2.5.1.2 优点:
                    1、改善表的查询
                    2、表更容易管理
                    3、便于备份和恢复
                    4、提高数据安全性
    2.5.2 分区表的分类
        2.5.2.1、范围分区
        2.5.2.2、列表分区
        2.5.2.3、散列分区
        2.5.2.4、复合分区
        2.5.2.5、间隔分区
        2.5.2.6、虚拟分区

时间: 2024-12-26 15:40:36

第二章 Oracle数据库应用的相关文章

第一章 oracle数据库基础

第一章   oracle数据库基础 1.oracle简介-->数据库管理系统    1.1:数据库    1.2:全局数据库名    1.3:数据库实例    1.4:表空间    1.5:数据文件(扩展名:.dbf)    1.6:控制文件(扩展名:.ctl)    1.7:日志文件(扩展名:.log)    1.8:模式和模式对象2.连接oracle数据库    2.1 SQL*Plus工具    2.2 PL/SQL Developer工具3.配置oracle数据库    3.1 配置监听

Oracle第二章——Oracle数据类型

当创建一个表时,需要为表的各个列指定数据类型,Oracle的数据类型主要有5种,字符类型.数值类型.日期时间类型.LOB类型和伪列. 一.字符类型 1.CHAR类型 定长字符串,长度为1~2000字节,如果定义时未指定大小,默认为1,使用时,若存储的值大小小于指定的长度,则用空格填充剩余长度, 若大于指定长度,则报错.示例:CHAR(20),若此时存储一个长度为10的字符串,则还是占用20个字节的空间.(此外,还可以用 CHAR(20CHAR)的方式进行定义,这种方式的意思是存储多少个字符,而不

MySQL篇,第二章:数据库知识2

MySQL 数据库 2 名词介绍 1.DB(Database) DB就是数据库,存储数据的仓库 2.DBMS(Database Management System) 数据库管理系统 管理数据库的软件,MySQL.Oracle.... 3.DBS(Database System) 数据库系统 DBS=DB(存储)+DBMS(数据库软件)+数据库应用(财务管理系统,人事管理系统)+用户 where条件字句(配合查.改.删操作) 1.语法格式 select * from 表名 where 条件; 表记

ORACLE数据库编程

第一章 Oracle数据库基本概念 一.介绍 Oracle数据库系统是美国Oracle(甲骨文)公司提供的以分布式数据库为 核心的一组软件产品,是目前最流行的客户/服务器(Client/Server,C/S)或 浏览器/服务器(Browser/Server,B/S)体系结构的数据库之一.二.特点1.完整的数据管理功能:数据的大量性数据的保存的持久性数据的共享性数据的可靠性Oracle优点:可用性强可扩展性强数据安全性强稳定性强三.Oracle数据库的辑逻结构1.表空间一个数据库被分割为数个被称作

新课程上线:Oracle数据库11gR2(之五):性能调优

购买Oracle数据库课程套餐,享八五折优惠!! 套餐地址:http://edu.51cto.com/pack/view/id-807.html Oracle 11g R2 数据库的性能优化 数据库的性能问题是数据库领域里讨论最多的话题,因其而其牵扯到数据库原理.IO存储.服务器性能.前台应用等等,故性能问题十分考验优化者内功.本课程将讲述ORACLE数据库在各种应用环境下的调优方案,让你内(优化原理,优化思路)外(优化工具,技巧)兼修,早日成为优化达人. Oracle 数据库系列课程,共包含以

关于学习Oracle数据库的一般步骤

学习Oracle数据库的大致过程有(以Oracle 10g为例): 第一章:Oracle的安装和配置 第二章:Oracle数据库管理 第三章:SQL初步介绍 第四章:基本SQL-SELECT语句 第五章:过滤和排序数据 第六章:单行函数 第七章:多表查询(1) 第八章:多表查询(2) 第九章:分组函数 第十章:子查询 第十一章:创建和管理表 第十二章:数据处理 第十三章:约束 第十四章:视图 第十五章:其它数据库对象 第十六章:控制用户权限 第十七章:SET运算符 第十八章:高级子查询 第十九章

oracle数据库表空间扩容方法

1. 先查询表空间在物理磁盘上存放的位置,注意使用sysdba的账号登陆. SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space FROM dba_data_files ORDER BY tablespace_name; 2. 需要扩容的表空间是DW_STG_TBS,目前的文件分配序号是DW_STG_TBS20.dbf, 所以在接下来的要增加的文件的名称从21开始,我们一次行

ORACLE AUTOMATIC STORAGE MANAGEMENT翻译-第二章ASM Instance(2)

ASM单点故障 经常由用户询问如何避免ASM单点故障的最佳实践.与其他文件系统或卷管理器一样 ASM实例失效会导致运行在上面的RDBMS实例不可用.然而OS 文件系统或卷管理器失效 一般会伴随操作系统崩溃,而asm重启不需要重启服务器. 解决ASM单点故障的最好的办法是把ASM运行在RAC环境通过集群实现高可用.ASM可以 继续运行在其他节点如果一个节点重启或rdbms重启.ASM失效是软崩溃恢复速度要比传统 的文件系统或卷管理器要快. ASM安装 如果服务器或者一个节点上一个ASM实例只管理一

【Oracle】第二章常用操作

ORACLE 第二章常用操作 修改表中的列信息: alter table vendor_master modify(vencode varchar(20)); 给表中列添加一个默认值约束 alter table mytable modify(name varchar2(20) default 'abc'); 为现有表中的列添加一个主键约束: alter table testtable add(constraint "idkey" primary key("ID"))