33人参与 • 2026-01-07 • Oracle
在日常使用数据库中,程序员和数据库管理员的权限并不是一致的。我们有时候需要对不同的使用者新建不同的用户并且授予不同的权限。
oracle内部有两个建好的用户:system和sys。
用户可直接登录到system用户以创建其他用户,因为system具有创建别 的用户的 权限。
在安装oracle时,用户或系统管理员首先可以为自己建立一个用户。

语法[创建用户]: create user 用户名 identified by 口令[即密码];
例子: create user test identified by test;
语法[更改用户]: alter user 用户名 identified by 口令[改变的口令];
例子: alter user test identified by 123456;
语法:drop user 用户名;
例子:drop user test;
若用户拥有对象,则不能直接删除,否则将返回一个错误值。指定关键字cascade,可删除用户所有的对象,然后再删除用户。
语法: drop user 用户名 cascade;
例子: drop user test cascade;
oracle为兼容以前版本,提供三种标准角色(role):connect/resource和dba.
1》. connect role(连接角色)
2》. resource role(资源角色)
3》. dba role(数据库管理员角色)
语法: grant connect, resource to 用户名;
例子: grant connect, resource to test;
语法: revoke connect, resource from 用户名;
例子: revoke connect, resource from test;
除了前面讲到的三种系统角色----connect、resource和dba,用户还可以在oracle创建自己的role。
用户创建的role可以由表或系统权限或两者的组合构成。为了创建role,用户必须具有create role系统权限。
语法: create role 角色名;
例子: create role testrole;
语法: grant select on class to 角色名;
例子: grant select on class to testrole;
注:现在,拥有testrole角色的所有用户都具有对class表的select查询权限
语法: drop role 角色名;
例子: drop role testrole;
注:与testrole角色相关的权限将从数据库全部删除
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论