Oracle中用户的基本操作

创建用户

1.首先登陆到系统用户sys(sys用户具有创建用户的权限)。

2.然后在代码编辑框写入创建用户的代码。

  语法:CREATE USER uer_name IDENTIFIED BY password;

  示例:CREATE USER student IDENTIFIED BY 123456;创建了一个student用户,登陆密码为123456.

3.default_tablespace:用户的默认表空间,用于储存数据库对象。如果忽略此参数,则默认存储到SYSTEM表空间

 temporary_tablespace:是临时对象默认存储的表空间,包括临时表。如果忽略此参数,则默认存储到SYSTEM表空间

给用户分配权限

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角色:允许用户连接数据库

  RESOURCE角色:允许用户创建相关的数据库对象,如表、序列等

  然而,在实际操作时我们有一次性分配多种权限的语句,如:GRANT CONNECT,RESOURCE TO student;给student用户分配了连接数据库,创建表,创建序列(无视图权限)等基本权限,足够初学者使用和操作了。

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用户下:

  语法:CONN student/123456

     PASSWORD;

  password必须放在下一行。

  sys用户下:

  语法: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;

2.注意:在删除用户时,如果用户架构包含对象(如,表),那么在删除用户的时候可以在DROP USER语句的用户名后面使用CASCADE关键字进行级联删除。但是需要注意是的是,要确保用户中的这些对象没有其他用户还需要访问。

时间: 2024-12-13 05:04:10

Oracle中用户的基本操作的相关文章

Oracle中用户(User)和模式(Schema)的概念

数据库理论中数据库用户和数据库模式并没有必然的联系,详细的数据库模式解释可以在这里找到: http://stackoverflow.com/questions/2674222/what-is-purpose-of-database-schema A database schema is a way to logically group objects such as tables, views, stored procedures etc. Think of a schema as a cont

查询、删除Oracle中用户信息

查询Oracle中所有用户信息,删除用户.表,禁止外键等.   1.查看所有用户: select * from dba_users;    select * from all_users;    select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs;    select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有

oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”

Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQL>alter user XXX account lock; SQL>SELECT * FROM V$SESSION WHERE USERNAME='LGDB': SQL>alter system kill session 'xx,xx' SQL>drop user xx cascade 2.shutdown掉数据库,再重启 具体查询进程号,

(转)oracle中用户删除不了,ORA-01940提示 “无法删除当前已连接用户”

Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQLalter user XXX account lock; SQLSELECT * FROM V$SESSION WHERE USERNAME='LGDB': Oracle删除用户的提示无法删除当前已连接用户两种解决方法如下: 1.先锁定用户.然后查询进程号,最后删除对应的进程.在删除对应的用户 SQL>alter user XXX account loc

如何查询Oracle中用户所有信息

1.查看所有用户: select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs;   select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限 sql>select * from role_s

查询oracle中用户信息

1.查看所有用户:select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):select * from dba_sys_privs;   select * from user_sys_privs; (查看当前用户所拥有的权限) 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限sql>select * from role_sys_

oracle中用户角色的查询和授权

用户拥有的系统权限 select  privilege  from dba_sys_privs  where grantee='&USERNAME' union  select  privilege  from  dba_sys_privs  where  grantee  in  (select  granted_role  from  dba_role_privs  where  grantee='&USERNAME'); 创建用户 CREATE USER songgx        

oracle中用户删除不了,提示“无法删除当前已连接的用户”

方案1:关闭数据库,再重启即可. 方案2: alter user XXX account lock;SELECT * FROM V$SESSION WHERE USERNAME='LGDB':alter system kill session 'xx,xx'drop user xx cascade: (1)查看用户的连接状况 select username,sid,serial# from v$session : (2)找到要删除用户的sid,和serial,并删除 alter system k

oracle中的事务

数据库事务有严格的定义,它必须满足4个特性:原子性(Atomic):表示组成一个事务的多个数据库操作是一个不可分割的原子单元只有所有的操作执行成功,整个事务才能提交,事务中任何一个数据库操作失败,己经执行的任何操作都必须撤销,让数据主加返回到初状态.一致性(Consistency):事务操作成功后,数据所处的状态和它的业务规则是一致的,即数据不会被被破坏.如从A账户转账100元到B账户,不管操作成功与否,A和B的存款总额不变的.隔离性(Isolation):在并发数据操作时,不同的事务拥有各自的