oracle函数开发测试用例,Oracle模拟业务最小测试用例

本文详细介绍了在Oracle环境下,如何创建和管理业务用户表空间,包括使用OMF、文件系统和ASM磁盘组创建数据、临时和索引表空间,创建业务用户,赋予用户权限,创建业务表并插入数据,创建索引,执行业务查询以及删除用户和表空间等操作。
摘要由CSDN通过智能技术生成

环境:RHEL6.4 +Oracle 11.2.0.4

1.创建业务用户表空间

2.创建业务用户

3.赋予用户权限

4.创建业务表

5.创建索引

6.业务查询SQL

7.删除业务用户及数据

8.删除业务表空间

1.创建业务用户表空间

假设使用了OMF管理,不需要明确指定数据目录(判定是否使用了OMF技术,查看db_create_file_dest参数配置:show parameter db_create_file_dest)

-- 数据表空间

create tablespace dbs_d_jingyu datafile size 30M autoextend off;

-- 临时表空间

create temporary tablespace temp_jingyu tempfile size 30M autoextend off;

-- 索引表空间(可选)

create tablespace dbs_i_jingyu datafile size 30M autoextend off;

假设文件系统管理,且未使用OMF管理,规划的数据目录是/oradata1

-- 数据表空间

create tablespace dbs_d_jingyu datafile '/oradata1/datafiles/dbs_d_jingyu01.dbf' size 30M autoextend off;

-- 临时表空间

create temporary tablespace temp_jingyu tempfile '/oradata1/tempfiles/temp_jingyu01.tmp' size 30M autoextend off;

-- 索引表空间(可选)

create tablespace dbs_i_jingyu datafile '/oradata1/datafiles/dbs_i_jingyu01.dbf' size 30M autoextend off;

假设ASM磁盘组,指定磁盘组是+DATA,具体路径OMF管理

-- 数据表空间

create tablespace dbs_d_jingyu datafile '+DATA' size 30M autoextend off;

-- 临时表空间

create temporary tablespace temp_jingyu tempfile '+DATA' size 30M autoextend off;

-- 索引表空间(可选)

create tablespace dbs_i_jingyu datafile '+DATA' size 30M autoextend off;

2.创建业务用户

-- 假设创建用户 jingyu 密码 jingyu,默认临时表空间 temp_jingyu, 默认数据表空间 dbs_d_jingyu。

CREATE USER jingyu IDENTIFIED BY jingyu

TEMPORARY TABLESPACE temp_jingyu

DEFAULT TABLESPACE dbs_d_jingyu

QUOTA UNLIMITED ON dbs_d_jingyu;

3.赋予用户权限

-- 赋予普通业务用户权限

grant resource, connect to jingyu;

-- 赋予DBA用户权限

grant dba to jingyu;

4.创建业务表

新建业务用户登录,创建T1,T2两张业务表,并插入测试数据。

-- 业务用户登录

conn jingyu/jingyu

-- 删除T1,T2两张表

drop table t1 cascade constraints purge;

drop table t2 cascade constraints purge;

-- 创建T1,T2两张表

create table t1( id number not null, n number, contents varchar2(4000) ) tablespace dbs_d_jingyu;

create table t2( id number not null, t1_id number not null, n number, contents varchar2(4000) ) tablespace dbs_d_jingyu;

-- 初始化向T1,T2表插入随机测试数据

execute dbms_random.seed(0);

set timing on

insert into t1  select rownum, rownum, dbms_random.string('a',50)   from dual   connect by level <= 100   order by dbms_random.random;

commit;

insert into t2  select rownum, rownum, rownum, dbms_random.string('b',50)  from dual  connect by level <= 100000  order by dbms_random.random;

commit;

-- 查询T1,T2表数据量

select count(1) from t1;

select count(1) from t2;

5.创建索引

-- 创建T1表字段n的索引idx_t1_n

create index idx_t1_n on t1(n) tablespace dbs_i_jingyu;

-- 创建T2表字段id的索引idx_t2_t1id

create index idx_t2_t1id on t2(t1_id) tablespace dbs_i_jingyu;

6.业务查询SQL

-- 业务查询SQL 1

select * from t1, t2 where t1.id = t2.t1_id and t1.n = 19;

-- 业务查询SQL 2

select * from t1, t2 where t1.id = t2.t1_id;

7.删除业务用户及数据

-- 删除业务用户jingyu

drop user jingyu cascade;

8.删除业务表空间

-- 删除数据表空间及其文件

drop tablespace dbs_d_jingyu including contents and datafiles;

-- 删除索引表空间及其文件

drop tablespace dbs_i_jingyu including contents and datafiles;

-- 删除临时表空间及其文件

drop tablespace temp_jingyu including contents and datafiles;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值