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 ...
随机推荐
- iOSDay27之界面通信
1. 属性传值(前面的界面给后面传值) 第一步: 在 SecondViewController.h 文件里定义一个存放传过来值的变量 contents #import <UIKit/UIKit. ...
- session过期问题
php中session过期时间设置及回收机制详解: 修改php中的session过期时间可以修改php配置文件php.ini中的session.gc_maxlifetime即可. 当php每发出一次请 ...
- Google Chrome开发者工具
Google Chrome开发者工具 是内嵌到浏览器的开发工具,打开方式有两种:第一“按F12”,第二:shift+ctrl+i(火狐.360等浏览器也可以这么用) Console介绍 Console ...
- ACM: 限时训练题解-Epic Professor-水题
Epic Professor Dr. Bahosain works as a professor of Computer Science at HU (Hadramout Universit ...
- 【BZOJ1270】1270: [BeijingWc2008]雷涛的小猫 DP
Description Input Output Sample Input Sample Output 8 HINT Source 唉这么蠢的Dp没一下子看出来,Dp真是太弱了啦. #includ ...
- Android -- 编辑框更改样式
1. 效果图
- nfs的使用
1.安装命令:sudo apt-get install nfs-kernel-server ; sudo apt-get install nfs-common; 2.执行命令:mkdir /(目录 ...
- linux下使用线程锁互斥访问资源
linux使用线程锁访问互斥资源: 1.线程锁的创建 pthread_mutex_t g_Mutex; 2.完整代码如下 #include <stdio.h> #include <s ...
- 总结新系统部署时,Oracle的一些注意事项:
1.Oracle安装时,要选择字符集为中文编码,数据库重要角色设置密码时,不要用数字开头,不然后面会报一些错误提示 2.emp导出的数据dmp格式,导入时要在服务器导入,具体没有试,要找机会试试,转化 ...
- C#面向对象之属性
1.属性的定义及使用 class MyClass { ; //属性的定义 private string name = ""; //属性的定义 public int Id { get ...