一、ORACLE数据库的模式对象的管理与维护
本节的主要内容是关于ORACLE数据库的模式对象的管理与维护,这些模式对象包括:表空间、表、视图、索引、序列、同义词、聚集和完整性约束。对于每一个模式对象,首先描述了它的定义,说明了它的功能,最后以基于SQL语言的实例说明如何对它们进行管理于维护。
1.1 表空间
由于表空间是包含这些模式对象的逻辑空间,有必要先对它进行维护。
创建表空间
SQL>CREATE TABLESPACE jxzy
>DATAFILE ‘/usr/oracle/dbs/jxzy.dbf’
>ONLINE;
修改表空间
SQL>ALTER TABLESPACE jxzy OFFLINE NORMAL;
SQL>ALTER TABLESPACE jxzy
>RENAME DATAFILE ‘/usr/oracle/dbs/jxzy.dbf’
>TO ‘/usr/oracle/dbs/jxzynew.dbf’
>ONLINE
SQL>CREATE TABLESPACE jxzy ONLINE
删除表空间
SQL>DROP TABLESPACE jxzy
>INCLUDING CONTENTS
1. 2 表维护
表是数据库中数据存储的基本单位,一个表包含若干列,每列具有列名、类型、长度等。
表的建立
SQL>CREATE TABLE jxzy.switch(
>OFFICE_NUM NUMBER(3,0) NOT NULL,
>SWITCH_CODE NUMBER(8,0) NOT NULL,
>SWITCH_NAME VARCHAR2(20) NOT NULL);
表的修改
SQL>ALTER TABLE jxzy.switch
>ADD (DESC VARCHAR2(30));
表的删除
SQL>DROP TABLE jxzy.switch play.bitsCN.com累了吗玩一下吧
>CASCADE CONSTRAINTS
//删除引用该表的其它表的完整性约束
1. 3 视图维护
视图是由一个或若干基表产生的数据集合,但视图不占存储空间。建立视图可以保护数据安全(仅让用户查询修改可以看见的一些行列)、简化查询操作、保护数据的独立性。
视图的建立
SQL>CREATE VIEW jxzy.pole_well_view AS
>(SELECT pole_path_num AS path,
pole AS device_num FROM pole
>UNION
>SELECT pipe_path_num AS path,
> well AS device_num FROM well);
视图的替换
SQL>REPLACE VIEW jxzy.pole_well_view AS
>(SELECT pole_path_num AS path,
pole AS support_device FROM pole
>UNION
>SELECT pipe_path_num AS path,
well AS support_device FROM well);
视图的删除
SQL>DROP VIEW jxzy.pole_well_view; play.bitsCN.com累了吗玩一下吧
1.4 序列维护
序列是由序列发生器生成的唯一的整数。
序列的建立
SQL>CREATE SEQUENCE jxzy.sequence_cable
>START WITH 1
>INCREMENT BY 1
>NO_MAXVALUE;
建立了一个序列,jxzy.sequence_cable.currval返回当前值,jxzy.sequence_cable.nextval 返回当前值加1后的新值
序列的修改
SQL>ALTER SEQUENCE jxzy.sequence_cable
>START WITH 1 //起点不能修改,若修改,应先删除,然后重新定义
>INCTEMENT BY 2
>MAXVALUE 1000;
序列的删除
SQL>DROP SEQUENCE jxzy.sequence_cable
1. 5 索引维护
索引是与表相关的一种结构,它是为了提高数据的检索速度而建立的。因此,为了提高表上的索引速度,可在表上建立一个或多个索引,一个索引可建立在一个或几个列上。
对查询型的表,建立多个索引会大大提高查询速度,对更新型的表,如果索引过多,会增大开销。
索引分唯一索引和非唯一索引
索引的建立
SQL>CREATE INDEX jxzy.idx_switch
>ON switch(switch_name)
>TABLESPACE jxzy;
索引的修改
SQL>ALTER INDEX jxzy.idx_switch
>ON switch(office_num,switch_name)
>TABLESPACE jxzy;
索引的删除
SQL>DROP INDEX jxzy.idx_switch;
1. 6 完整性约束管理
数据库数据的完整性指数据的正确性和相容性。数据完整型检查防止数据库中存在不符合语义的数据。
完整性约束是对表的列定义一组规则说明方法。ORACLE提供如下的完整性约束.
a. NOT NULL 非空
b. UNIQUE 唯一关键字
c. PRIMATY KEY 主键一个表只能有一个,非空
d. FOREIGA KEY 外键 feedom.net国内最早的网管网站
e.CHECK 表的每一行对指定条件必须是true或未知(对于空值)
例如:
某列定义非空约束
SQL>ALTER TABLE office_organization
>MODIFY(desc VARCHAR2(20)
>CONSTRAINT nn_desc NOT NULL)
某列定义唯一关键字
SQL>ALTER TABLE office_organization
>MODIFY(office_name VATCHAR2(20)
>CONSTRAINT uq_officename UNIQUE)
定义主键约束,主键要求非空
SQL>CREATE TABLE switch(switch_code NUMBER(8)
>CONSTRAINT pk_switchcode PRIMARY KEY,)
使主键约束无效
SQL>ALTER TABLE switch DISABLE PRIMARY KEY
定义外键
SQL>CREATE TABLE POLE(pole_code NUMBER(8),
>office_num number(3) bbs.bitsCN.com国内最早的网管论坛
>CONSTRAINT fk_officenum
>REFERENCES office_organization(office_num)
>ON DELETE CASCADE);
定义检查
SQL>CREATE TABLE office_organization(
>office_num NUMBER(3),
>CONSTRAINT check_officenum
>CHECK (office_num BETWEEN 10 AND 99);
二、ORACLE数据库用户与权限管理
ORACLE是多用户系统,它允许许多用户共享系统资源。为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。
2. 1 ORACLE数据库安全策略
建立系统级的安全保证
系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间、建立用户、修改用户的权利、删除用户等。系统特权可授予用户,也可以随时回收。ORACLE系统特权有80多种。
建立对象级的安全保证
对象级特权通过授予用户对数据库中特定的表、视图、序列等进行操作(查询、增、删改)的权利来实现。
建立用户级的安全保证
用户级安全保障通过用户口令和角色机制(一组权利)来实现。引入角色机制的目的是简化对用户的授权与管理。做法是把用户按照其功能分组,为每个用户建立角色,然后把角色分配给用户,具有同样角色的用户有相同的特权。
2.2 用户管理
ORACLE用户管理的内容主要包括用户的建立、修改和删除
用户的建立
SQL>CREATE USER jxzy
>IDENTIFIED BY jxzy_password
>DEFAULT TABLESPACE system
>QUATA 5M ON system; //供用户使用的最大空间限额
用户的修改
SQL>CREATE USER jxzy
>IDENTIFIED BY jxzy_pw
>QUATA 10M ON system;
删除用户及其所建对象
SQL>DROP USER jxzy CASCADE; //同时删除其建立的实体 blog.bitsCN.com网管博客等你来搏
2.3系统特权管理与控制
ORACLE 提供了80多种系统特权,其中每一个系统特权允许用户执行一个或一类数据库操作。
授予系统特权
SQL>GRANT CREATE USER,ALTER USER,DROP USER
>TO jxzy_new
>WITH ADMIN OPTION;
回收系统特权
SQL>REVOKE CREATE USER,ALTER USER,DROP USER
>FROM jxzy_new
//但没有级联回收功能
显示已被授予的系统特权(某用户的系统级特权)
SQL>SELECT*FROM sys.dba_sys_privs
2.4 对象特权管理与控制
ORACLE对象特权指用户在指定的表上进行特殊操作的权利。这些特殊操作包括增、删、改、查看、执行(存储过程)、引用(其它表字段作为外键)、索引等。
授予对象特权
SQL>GRANT SELECT,INSERT(office_num,office_name), feedom.net国内最早的网管网站
>UPDATE(desc)ON office_organization
>TO new_adminidtrator
>WITH GRANT OPTION;
//级联授权
SQL>GRANT ALL ON office_organization
>TO new_administrator
回收对象特权
SQL>REVOKE UPDATE ON office_orgaization
>FROM new_administrator
//有级联回收功能
SQL>REVOKE ALL ON office_organization
>FROM new_administrator
显示已被授予的全部对象特权
SQL>SELECT*FROM sys.dba_tab_privs
2.5 角色的管理
ORACLE的角色是命名的相关特权组(包括系统特权与对象特权)
发表评论
-
Oracle 还原序列
2011-05-23 00:07 879declare n number(10); tsql ... -
instantclient_10_2客户端配置
2011-05-23 00:07 22731.下载Oracle Client Package . ... -
Oracle分页过程
2011-05-23 00:03 635CREATE OR REPLACE PROCEDURE &q ... -
手工创建Oracle数据库
2011-05-23 00:01 742系统环境: 1、操作系统:Windows 2000 Serv ... -
oracle常用命令
2011-05-22 23:59 497如何单独备份一个或多个用户: D:\>exp sco ... -
有效创建Oracle dblink的两种方式
2011-05-22 23:59 730两台不同的数据库服务器,从一台数据库服务器的一个用户读取另一台 ... -
oracle 绑定变量(bind variable)
2011-05-22 23:58 971绑定变量 在oracle 中,对于一个提交的sql ... -
oracle exp/imp命令详解
2011-05-22 23:56 695E:\>exp help=y 通过输入 EXP 命 ... -
Oracle备份与恢复
2011-05-22 23:54 631Oracle备份与恢复:逻辑备份 [导出(Export)导 ... -
触发器过程
2011-05-22 23:53 612触发器过程 PL/pgSQL 可以用于定义触发器过程。 一个 ... -
一些常用PLSQL语句 和事务
2011-05-22 23:52 1095基本的 PL/SQL语句AS 改变标题:列名 AS 列标题 ... -
学习ORACLE 视图
2011-05-22 23:50 610--视图--视图是一个逻辑表,是查看表的一种方式,用来定义来 ... -
学习ORCALE索引
2011-05-22 23:49 694--索引--索引是加快检索表中数据的方式。对于包含大量数据的表 ... -
学习ORCALE 表和约束
2011-05-22 23:48 557--表的建立create table TEST(ID nu ... -
学习ORCALE表空间、用户建立SQL
2011-05-22 23:47 835CREATE tablespace MYTEST DATAFI ... -
Oracle数据库的体系结构
2011-05-21 14:31 5201. 物理结构 物理数据库结构是由构成数据库的操作系统文 ...
相关推荐
本资源的主要内容是关于ORACLE数据库的模式对象的管理与维护,这些模式对象包括:表空间、表、视图、索引、序列、同义词、聚集和完整性约束。对于每一个模式对象,首先描述了它的定义,说明了它的功能,最后以基于...
本书面向Oracle初、中级数据库管理员、安全维护员、网络管理员以及Oracle数据库应用开发人员,也可作为高校数据库专业师生参考读物。本书内容极为丰富,有章可循、编排精细、可操作性强;并提供了针对具体的数据库...
1.7.6 建立其他用户和模式对象 1.7.7 启用归档日志方式 1.7.8 进行数据库完全备份 1.7.9 配置数据库自动启动和关闭 1.7.10 在数据库投入使用之后对其进行 监控 1.7.11 怎样列出和描述初始化参数 1.7.12 怎样...
Oracle 数据库逻辑备份使用工具 Oracle 数据库逻辑备份形式 数据库状态检查 数据库版本检查 查看SGA区域 回滚段竞争检查 查看日志文件 查看表空间 检查job状态 监听管理 本地服务名配置 处理简单的连接问题 错误...
实验78:维护对象权限 159 实验79:维护角色 160 实验80:审计 161 数据库字符集 162 实验81:配置国家语言支持 163 元数据 165 实验82:提取元数据dbms_metedata 165 第四部分数据库的网络配置 168 实验83:配置...
选定某一主题,运用oracle数据库,以及相关技术方法设计和开发一个信息管理的数据库系统,实现数据库的开发应用以及日常管理维护等基本功能。 具体要求如下: (1)选定某一主题,创建一个oracle数据库,对其进行...
系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用开发基础,并通过两个完整案例来介绍基于Java开发包和Oracle数据库进行案例开发的详细...
《oracle数据库性能优化的艺术》内容高屋建瓴,用辩证法中的系统化分析方法,不仅从硬件(服务器系统、存储系统、网络系统等)、软件(操作系统、中间件系统、应用软件等)和应用场景(用户访问模式、用户使用频度、...
本文档详细讲解ORACLE数据库的内部体系结构,包含数据库实例,物理存储结构,逻辑存储结构,配置与维护,非常详细地介绍了数据库模式对象的应用于管理,包括表,约束,索引,分区表,分区索引,视图,簇,外部表,...
本节的主要内容是关于ORACLE数据库的模式对象的管理与维护,这些模式对象包括:表空间、表、视图、索引、序列、同义词、聚集和完整性约束。对于每一个模式对象,首先描述了它的定义,说明了它的功能,最后以基于SQL...
系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用开发基础,并通过两个完整案例来介绍基于Java开发包和Oracle数据库进行案例开发的详细...
5. 数据库运营维护(主要是安全管理、备份与恢复管理等) 6. 设计报告中有八九个表,存储过程六七个, 6 个 sql 案例。 一、封面; 二、目录; 三、设计任务书; 1. 课程设计系统名称 2. 系统功能说明 3. ...
数据库的 各种数据操作(如查找、修改、插入和删除等)和数据库的维护管理都是以数据库模式为 依据的。 (2)应用程序的编译:把包含着访问数据库语句的应用程序,编译成在dbms支持下可 运行的目标程序。 (3)交互式查询...
Oracle数据库开发应用中经常对数据库管理员有这样的需求,对比两个不同实例间某模式下对象的差异或者对比两个不同实例某模式下表定义的差异性,这在涉及到数据库软件的开发应用中是经常遇到的。一般数据库软件的...
数据组织、存储与管理:DBMS要分类组织、存储和管理各种数据,包括数据字典、 用户数据、存取路径等,需确定以何种文件结构和存取方式在存储级上组织这些数据, 如何实现数据之间的联系。数据组织和存储的基本目标是...
第13章 Oracle数据库的安全管理 13.1 Oracle数据库安全性概述 13.1.1 Oracle 11g的安全性体系 13.1.2 Oracle 11g的安全性机制 13.2 用户管理 13.2.1 创建用户 13.2.2 修改用户 13.2.3 删除用户信息 13.2.4 查询用户 ...