--创建临时表空间
create temporary tablespace yhtemp
tempfile 'D:\oracle\oradata\Oracle10g\yhtemp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
--创建数据表空间
create tablespace yh
logging
datafile 'D:\oracle\oradata\Oracle10g\yh.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
--创建用户并指定表空间
create user yh identified by password
default tablespace yh
temporary tablespace yhtemp;
--给用户授予权限
grant connect,resource,dba to yh;
--撤销此权限
revoke unlimited tablespace from yh
--将用户在yss,test1表空间的配额置为0
alter user yh quota 0 on yss
alter user yh quota 0 on test1
--设置在用户在yh表空间配额不受限
alter user yh quota unlimited on yh
经过上述设置后,就可以用imp导入数据,数据将会进入指定的yh表空间:
C:\Documents and Settings\myhuang>imp yh/yh@ora9 fromuser=yss tous
er=yh file=E:\yss.dmp ignore=y grants=n
顺便说两个小问题:
(1)IMP-00003: 遇到 ORACLE 错误 1658
ORA-01658: 无法为表空间 yh中的段创建 INITIAL 区
通常这个问题可以通过Resize增加表空间数据文件大小来解决。
(2)删除表空间
SQL> drop tablespace yh including contents and datafiles;
在10g中实验,drop表空间之后,仍然需要手动去删除数据文件。