(2)改变表空间的读写状态。
(3)删除表空间,可以通过DROP语句来删除表空间,再加上表空间的名字即可。
DROP TABLESPACE 表空间名 [INCLUDING CONTENTS] ;
其中INCLUDING CONTENTS是可选项。如果删除仍包含数据的表空间,需要加上该选项。
四、用户管理
1. 创建用户
举例:
2. 修改用户的密码
ALTER USER 用户名 IDENTIFIED BY 密码 ;
3. 删除用户。使用DROP USER命令可以删除用户,当用户拥有模式对象时则无法删除用户,而必须使用CASCADE选项以删除用户及用户模式对象。
DROP USER 用户名 CASCADE;
创建用户前的准备工作:
1) 选择用户名和密码
2) 识别用户需用于存储对象的表空间
3) 决定每个表空间的限额
4) 分配缺省表空间和临时表空间
5) 创建用户
6) 向用户授予权限和角色
五、数据库权限管理
1. 系统权限
系统权限是指在数据库中执行某种系统级别的操作,或者针对某一类对象执行某种操作的权利
常用的系统权限如下:
CREATE SESSION:连接到数据库
CREATE TABLE:创建表
CREATE VIEW:创建视图
CREATE SEQUENCE:创建序列
2. 对象权限
对象权限是指针对某个特定模式对象执行操作的权利,只能针对模式对象来设置管理对象权限,包括:表、视图、序列、存储过程等。
Oracle数据用户有两种途径获得权限:
(1)直接向用户授予权限
(2)将权限授予给角色,再将角色授予给一个或多个用户。使用角色能够更加方便和高效地对权限进行管理,所以数据库管理员通常使用角色向用户授予权限,而不是直接向用户授予权限。
Oracle中常用系统预定义角色如下:
(1)CONNECT:拥有连接数据库的权限
(2)RESOURCE:拥有创建表、触发器、过程等权限
(3)DBA:数据库管理员角色,拥有管理数据库的最高权限
3. 新建的用户必须授予一定的权限才能进行相关数据库操作。
授权通过GRANT语句,取消授权则通过REVOKE语句。
授予权限语法格式如下:
GRANT 权限 | 角色 TO 用户名;
撤销权限语法格式如下:
REVOKE 权限 | 角色 FROM 用户名;
六、事务控制
COMMIT:提交事务,即把事务中对数据库的修改进行永久保存。
ROLLBACK:回滚事务,即取消对数据库所做的任何修改
自动提交:set autocommit on
关闭自动提交:set autocommit off
七、索引
索引是oracle的一个对象,是与表关联的可选结构,提供了一种快速访问数据的途径,提高了数据库检索性能。索引使数据库程序无需对整个表进行扫描,就可以在其中找到所需要的数据。就像书的目录,可以通过目录快速查找所需信息,无需阅读整本书。
1、索引的特点
适当地使用索引可以提高查询速度
可以对表的一列或多列建立索引
建立索引的数量没有限制
索引需要磁盘存储,可以指定表空间,由oracle自动维护
索引对用户透明,检索时是否使用索引由oracle自身决定
Oracle数据库管理系统在访问数据时使用以下三种方式:
- 全表扫描
- 通过ROWID(行地址,快速访问表的一行)
- 使用索引
当没有索引或者不选择使用索引时就用全表扫描的方式
2.索引的分类
(1)创建普通索引(B树索引)
参数解释:
index_name:创建索引的名称
tablename:为之创建索引的表名
columnname:在其上创建索引的列名列表,可以基于多列创建索引,列之间用逗号分隔
tablespace:为索引指定表空间