Oracle是大家开发时经常会用到的关系型数据库,今天教大家在一个已经安装好的Oracle中创建用户与表空间。
第一步,创建临时表空间:
-- 临时表空间
create temporary tablespace testtemp --临时表空间名
tempfile 'C:\app\tablespace\testtemp.dbf' -- 临时表空间本地路径,这个路径要改为你本地存在的地址
size 50 m -- 默认大小
autoextend on --自动增长
next 50 m maxsize 20480m --每次增长大小与最大大小
extent management local; --本地管理
第二步,创建标准表空间:
-- 表空间
create tablespace test --表空间名
logging
datafile 'C:\app\tablespace\test.dbf'
size 50 m
autoextend on
next 50 m maxsize 20480m
extent management local;
第三步,创建用户并关联表空间:
-- 创建用户
create user test identified by test --用户名和密码都是test
default tablespace test--关联表空间
temporary tablespace testtemp; --关联临时表空间
最后一步给用户赋权
-- 赋权
grant connect,resourcedba to test; --用户名
这样就创建好了一个test用户,使用test登录就会默认加载我们新建的表空间了。
Oracle在导入大量数据时,可能会被约束条件制约,导致导入数据失败。
这个时候我们需要暂时禁用约束,等导入数据后再启用约束。
1.首先我们要禁用系统中所有的约束
--禁用所有外键约束
select 'alter table ' || table_name || ' disable constraint ' ||
constraint_name || ';'
from user_constraints
where constraint_type = 'R'
使用上面提供的语句查询,结果如下图:

这时我们看到,已经对系统中所有的约束生成了禁用的sql语句,我们只需要执行生成的sql语句就可以了。
2.正常导入数据
3.导入数据结束以后我们再启用约束
--启用所有外键约束
select 'alter table ' || table_name || ' enable constraint ' ||
constraint_name || ';'
from user_constraints
where constraint_type = 'R'
启用约束同上,如图所示:

可以看到生成的sql语句差不多,只是把disable换成了enable。
执行生成的sql语句就可以了。