关于oracle数据库创建用户与用户赋权、创建表空间心得

有时候在新建项目工程时候创建用户或者导入数据时候,会犯愁创建用户到底该怎么赋权呢?在导入数据时候出现错误怎么办呢?等一些问题。花一段时间解决了这些问题,过得一段时间有忘记了语句怎么写,错误怎么解决,所以留下笔记如下:

1、在管理员sys用户下创建用户语句:

create tablespace TZZYDB datafile 'D:\oracle\product\10.2.0\oradata\orcl\TZZYDB.dbf'
SIZE 10M REUSE AUTOEXTEND ON NEXT 10 ;
create user tzzydb identified by tzzydb 
default tablespace TZZYDB 
temporary tablespace TEMP;
grant connect to tzzydb;
grant unlimited tablespace to tzzydb;
grant dba to tzzydb;

上述语句大致意思是创建表空间TZZYDB,把表空间 TZZYDB指定给创建出的用户 tzzydb,给用户tzzydb指定一个临时的表空间TEMP(可以不指定),赋予connect(链接)的权限,赋予dba权限。

2、用户表空间创建好之后,就是导入数据:

1)cmd中命令语句是:导入 imp tzzydb/tzzydb@ORCL file=E:\123\tzzydb.dmp full=y ignore=y ;

     导出 exp 用户名/密码@网络服务名 file=E:\123\xxx.dmp ;(注:如果要导出具体的表或多表只需在后面     加入tables=(表名1,表名2)

       2)用PL/SQL导入.pde文件和.sql文件时,可能会出现没法继续导入的错误例如:.sql文件中含有&符号,导入时候出现不识别情况,这时候只需把&替换成'||chr(38)||'即可,注意两边的单引号加上。为什么呢?只sql编辑其中输入select chr(38) from dual;就知道查询出的也是&符号。

3、在导入数据时候,有些错误无法自动解决的,要手动解决,我碰到的有一下几种情况:

1)在解决问题前,在pL/SQL工具中点击编辑无效对象,错误出现在view(视图)和存储过程就要改,再点击执行,接着选中一个目标右击鼠标选中编辑说明与体,弹出窗口后点击执行找到错误源。

2)错误出现一般是没有赋予权限,例如表的查询,修改,删除,增加的权限,存储过程的执行权限;如下例子

grant execute on TZPZ.s_Dict to tzdb;--这是表示用户TZPZ中s_Dict存储函数执行权限赋予给用户tzdb--
grant select on Dba_Tab_Cols to tzpz;--这是表示用户sys中Dba_Tab_Cols表的查询权限赋予给用户tzpz(Dba打头的是用户sys下的)--
grant select on Dba_Col_Comments to tzpz;
grant select on Dba_All_Tables to tzpz
grant delete on u_module to tzpz;
grant update on std_zy_zysy to tzzydb;
grant execute on TZDB.Get_Pinyin to tzzydb;
grant update on tzdb.std_zy_zysy to tzzydb;
grant select on tzdb.jhs_impstat to tzzydb;
grant execute on tzdb.Pub to tzzydb;




你可能感兴趣的:(oralce)