您的位置:首页 > 数据库 > Oracle

oracle 创建用户

2015-08-03 16:51 441 查看
最近开始学习oracle,小白起步~

我创建用户的步骤是:首先判断用户是否已经存在,如果存在就删除。然后创建用户,并分配表空间和权限。

判断要创建的用户已经存在,如果存在就删除。

declare
row integer;
begin
select count(*) into row from dual where exists(select * from all_users a where a.username=upper('zhang'));
if row > 0 then
execute immediate 'DROP USER zhang cascade';
end if;
end;


这一段代码我遇到的问题的总结:
1.用户名那里没加upper函数。用户名和表名等,在数据库中都是以大写字母的形式保存,所以在搜索时,要使用upper函数。

否则查找为空。

2、PL/SQL语言不熟悉,对变量声明以及条件语句不熟悉。

然后就是创建用户和分配空间、权限了

create user zhang identified by dajiao default tablespace tableData
grant connect to zhang;
grant resource to zhang;
grant DBA to zhang;
grant unlimited tablespace to zhang;
grant create any table to zhang;
grant select any table to zhang;
但是,遇到了问题 ORA-00922。从错误提醒很容易知道是第一句执行失败,没有创建用户。问题应该就是出现在表空间tableData那里了。

创建表空间:

create tablespace tableData
logging
datafile 'H:\oracleData\tableData.dbf'
size 50m
autoextend on next 2m maxsize 100m;


但是创建成功后,还是那几个错误。那就问一下度娘咯~。
从度娘那里的知,这是因为语句或者命名不规范导致,于是我尝试这将用户名改成大写,然并卵~.后面在检查一下语句,发现第一句结束没有分号,加上了就ok了。

然后查看一下用户。

这是本小白的第一篇博客,希望有那个盆友看到了,打声招呼也好哦。但不希望看到喷友~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: