Oracle中用户的基本操作
创建用户
1.首先登陆到系统用户sys(sys用户具有创建用户的权限)。
2.然后在代码编辑框写入创建用户的代码。
语法:CREATE USER user_name IDENTIFIED BY password
[ACCOUNT LOCK|UNLOCK] lock:给用户上锁;unlock:解锁用户。(和connnect角色无关)
[DEFAULT TABLESPACE default_tablespace] default_tablespace:用户的默认表空间,用于储存数据库对象。如果忽略此参数,则默认存储到SYSTEM表空间
[TEMPORARY TABLESPACE temporary_tablespace]; temporary_tablespace:是临时对象默认存储的表空间,包括临时表。如果忽略此参数,则默认存储到SYSTEM表空间
示例:CREATE USER student IDENTIFIED BY 123456;创建了一个student用户,登陆密码为123456.
给用户分配权限
1.如果想让用户在数据库里完成一些任务,需要相应的给用户授予权限。如:如果想让用户连接到数据库,必须授予用户CREATE SESSION的系统权限。
2.授权必须通过一些特殊用户授权(例如SYSTEM),通过GRANT语句来完成。下表列出了用户可能用到的权限。
|
系统权限 |
允许用户的操作 |
|
CREATE SESSION |
连接到数据库 |
|
CREATE SEQUENCE |
创建序列,用来生成一系列的数值 |
|
CREATE SYNONYM |
创建同义词 |
|
CREATE TABLE |
在用户架构中创建表 |
|
CREATE ANY TABLE |
在任意架构中创建表 |
|
DROP TABLE |
从用户架构中删除表 |
|
DROP ANY TABLE |
在任意构架中删除表 |
|
CREATE PROCEDURE |
创建存储过程 |
|
EXECUTE ANY PROCEDURE |
在任意架构中执行存储过程 |
|
CREATE USER |
创建用户 |
|
DROP USER |
删除用户 |
|
CREATE VIEW |
创建视图 |
语法:GRANT CREATE SESSION TO student;给用户student分配连接的权限。
CONNECT角色:主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予他们CONNECT角色,拥有CONNECT角色可以与服务器建立连接会话(SESSION,客户对服务器连接称为会话。)
RESOURCE角色:更可靠的和正式的用户可以授予RESOURCE角色.RESOURCE角色提供给用户创建表,序列,过程(procedure),触发器(tigger),索引(index)等。
一般情况下,一个普通的用户,如scott,拥有connect和resource权限即可进行常规的数据库开发工作。
3.分配了权限之后的用户也可以给别的用户分配它自身所拥有的权限,但是前提是它被分配权限的时候最后有WITH ADMIN OPTION字样。
撤销用户权限
1.关键字:REVOKE.
示例:REVOKE CONNECT FROM student;
2.注意:如果student用户给别的用户分配了权限,那么撤销student的权限时,student用户分配权限的用户的权限不会改变。
修改用户密码
1.一般修改的时候都会用到ALTER关键字来打头,就如创建时候一样使用的关键字是CREATE。
语法:ALTER USER student IDENTIFIED BY 111111;修改student用户的密码为111111.
2.我们也可以用password来可视化修改密码。
student用户下和sys用户下都可以:
2-1.语法:CONN student/123456
PASSWORD;
password必须放在下一行。
2-2语法:CONNECT student/123456
PASSWORD;
password必须放在下一行。
查询用户信息
1.在Oracle数据库中,可以通过DBA_USERS查询出包含与用户和用户特征相关的信息。(它查出来的是所有用户的信息)
语法:SELECT username,user_id,password,default_tablespace
FROM dba_users;
2.如果要查询当前用户的信息,则可以登录你想查询的用户,然后使用Select * from user_role_privs;语句来查看它的信息。
删除用户
1.关键字DROP,例如删除student用户。
示例:DROP USER student [cascade --作用是级联删除即删除用户的对象(表。。),但注意删除是这些对象没有被其它用户访问];
2.注意:在删除用户时,如果用户架构包含对象(如,表),那么在删除用户的时候可以在DROP USER语句的用户名后面使用CASCADE关键字进行级联删除。但是需要注意是的是,要确保用户中的这些对象没有其他用户还需要访问。
Oracle中用户的基本操作的更多相关文章
- Oracle中的一些基本操作
关于Oracle中的一些基本操作,包括表空间操作,用户操作,表操作 --创建表空间 create tablespace itheima datafile 'I:\oracle\table\itheim ...
- Oracle中用户(User)和模式(Schema)的概念
数据库理论中数据库用户和数据库模式并没有必定的联系.具体的数据库模式解释能够在这里找到: http://stackoverflow.com/questions/2674222/what-is-purp ...
- Oracle中用户和方案的区别
从定义中我们可以看出方案(Schema)为数据库对象的集合,为了区分各个集合,我们需要给这个集合起个名字,这些名字就是我们在企业管理器的方案下看到的许多类似用户名的节点,这些类似用户名的节点其实就是一 ...
- (转)oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”
Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQLalter user XXX account lock; ...
- oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”
Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQL>alter user XXX account l ...
- 如何查询Oracle中用户所有信息
1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users; 2. ...
- Oracle中用户的创建和权限设置
权限: CREATE SESSION --允许用户登录数据库权限 CREATE TABLE --允许用户创建表权限 UNLIMITED TABLESPACE --允许用户在其他表空间随意建表 角色: ...
- ORACLE中用户等系统信息操作
1.查看所有用户:select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角色系统 ...
- Oracle中用户解锁
以hr 用户为例: SQL> alter user hr account unlock; ユーザーが変更されました. SQL> alter user hr identified by hr ...
随机推荐
- ural 2073. Log Files
2073. Log Files Time limit: 1.0 secondMemory limit: 64 MB Nikolay has decided to become the best pro ...
- #来自codeforces round 363
具体情况是这样的:同样的程序,在我自己的电脑上跑出来是正确的结果,而提交到CF的评测机后对于相同的输入数据,结果居然不一样了!反复检查后未发现任何问题.目前怀疑可能与memset有关,因为在一步步修改 ...
- apr 内存管理
//============================================================================ // Name : mytest.cpp ...
- Ubuntu下SVN配置
今天上午写了一个脚本,然后想起来现在写的R脚本,常常在分析过程中就直接改掉了.隐隐还是觉得存在隐患,想着svn部署应该不会太难,于是就直接动手干了. 弄了一上午的时间,感觉还是花了点时间. 这里有篇b ...
- Hadoop学习笔记(2)
Hadoop序列化:Long 和Int---变长编码的方法: 如果整数在[ -112, 127] ,所需字节数为1,即第一个字节数就表示该值. 如果大于127,则第一个字节数在[-120,-113]之 ...
- Android -- TabHost
TabHost 也就相当于Windows下的选项框 有两种实现方式 1. 继承TabActivity (已经废弃):从TabActivity中用getTabHost()方法获取TabHost 2. ...
- tornado 学习笔记1 引言
从事软件开发这行业也快5年啦,其实从事的工作也不完全是软件开发,软件开发只是我工作中的一部分.其中包括课题研究.信息化方案设计.软件开发.信息系统监理.项目管理等工作,比较杂乱.开发的软件比较多,但是 ...
- Install the Maven in your computer
While, this blog will talk about installing the Maven in your computer. There are three steps as fol ...
- weblogic部署项目包,报空指针错误
贴出 报错代码 <weblogic> <> <> <1479765377228> <BEA-240003> <Console enco ...
- IOS 蓝牙相关-BabyBluetooth蓝牙库介绍(4)
BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你 ...