oracle 建立视图,创建用户并授予查询权限

一、需求

数据库有个表car,需要为这个表建立一个视图view_car,并新建一个用户user01,赋予查询这个视图的权限

二、实施步骤

1、以管理员clgl登陆数据库,新建视图view_car:

create or replace view view_car as select * from CAR;

2、新建用户user01

create user user01
identified by "123456";

3、授予用户user01权限

grant select on view_car_runtime_b to user01;    //查询视图权限
grant connect to user01;                                   //连接数据库权限
grant create synonym to user01;                        //新建同义词权限

4、以用户user01登陆数据库,可以访问到视图view_car的信息

select * from clgl.view_car;      //查询视图view_car的信息,由于每次都需要加上用户前缀clgl.,十分不方便,因此设置一个同义词方便查询

5、为视图clgl.view_car新建一个别名car

create synonym car for clgl.view_car;    //设置clgl.view_car的别名为car

select * from car;    //用户可以直接输入car查询数据

6、以clgl登陆数据库,设置用户user01的允许访问会话数

alter system set resource_limit=true scope=both sid=‘*‘;     //使用resource_limit及profile限制用户连接
create profile user01_profile limit SESSIONS_PER_USER 1 FAILED_LOGIN_ATTEMPTS unlimited;   //新建一个user profile:user01_profile 
alter user user01 profile user01_profile;    //更改用户user01的profile为user01_profile
alter profile user01_profile limit SESSIONS_PER_USER 2;  //限定用户user01的连接数为2

当user01的访问连接数超过三个时,会提示错误:ora-02391:exceeded simultaneous sessions_per_user limit

时间: 2024-07-29 12:04:51

oracle 建立视图,创建用户并授予查询权限的相关文章

Postgres和MySQL创建用户并授予db权限

Postgresql和MySQL还是有很多不同的.就比如授权来说.当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user. 如果是MySQL, 可以这样做 mysql> create database mydb; mysql> create user a_user identified by 'ThePassword' -> ; Query OK, 0 rows affected (0.04 sec) mysql> grant all privileg

oracle创建用户、授予权限及删除用户1

oracle创建用户.授予权限及删除用户 创建用户 oracle对表空间 USERS 无权限 alter user 用户名 quota unlimited on users; //创建临时表空间 create temporary tablespace test_temp tempfile 'E:/oracle/product/10.2.0/oradata/testserver/test_temp01.dbf' size 32m autoextend on next 32m maxsize 204

Oracle数据库视图创建与处理方法教程

有关Oracle数据库视图创建与处理方法教程. 分享下oracle中创建视图与处理视图的方法,学习oracle视图的使用方法. 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改.视图基于的表称为基表,Oracle的数据库对象分为五种:表,视图,序列,索引和同义词. 视图是存储在数据字典里的一条select语句.通过创建视图可以提取数据的逻辑上的集合或组合. oracle视图的优点:1.对数据库的访问,因为视图可以有选择性的选取数据库里的一部分.2.用

Oracle_创建用户_授予权限

Oracle_创建用户_授予权限 --创建用户,需要足够的权限  create create user hzf identified by hzf;    --给用户bjsxt分配权限  grant grant connect,resource to hzf; grant dba to hzf; --撤销权限 revoke revoke connect,resource from hzf;   --删除用户 drop user hzf;   权限 权限指执行特定类型SQL 命令或访问其他对象的权

mysql创建用户、赋予指定权限命令

1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; 例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能.需要在mysql的root用户下进行 mysql>grant select,insert,update,delete on *.* to [email protected

oracle创建用户、授予权限及删除用户

创建用户 oracle对表空间 USERS 无权限 alter user 用户名 quota unlimited on users; //创建临时表空间 create temporary tablespace test_temp tempfile 'E:/oracle/product/10.2.0/oradata/testserver/test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management

关于Oracle 创建用户 ,分级查询,以及PL/SQL语言的随感

--------系统权限-------- 创建用户 create user zc identifid by zc ; --创建用户 grant create session to zc;--创建用户登陆权限 revoke create session from zc;--接触用户登陆权限 alter user account  unlock; --修改用户不锁定权限 drop user zc cascade:---级联删除 ----对象权限 三种对象:DBA  最高权限 resource 不能创

oracle物化视图创建

我们如果遇到需要从其它系统的数据库中取数据进行统计分析的问题,可疑选择使用ORACLE的ODI工具进行抽数,但是对方提供的数据库用户下没有任何对象,只是有查询所有表的权限,因此无法做数据反向. 于是决定使用物化视图,把对方数据库中的数据拿过来,虽然数据量比较大,但是每月只拿一次,而且如果设置成增量更新,也不会太慢.现在记录下物化视图的创建过程(以一张表为例). 一.准备条件以及备注 假设双方数据库都是ORACLE10g,需要同步过来的表名叫:GG_ZLX_ZHU,对方数据库用户名:usernam

oracle中创建用户、角色、权限、表空间简单使用

一.数据库用户 创建数据库用户 create user 用户名 identified by 密码; 授权 grant 权限名 to 用户名; 查看当前用户权限 select * from session_privs; 移除权限 revoke 权限 session from 用户名; 用户解锁/锁定 alter user 用户名 account unlock/lock;  二.角色 角色:权限组,多种权限的集合,将角色赋予某个用户时即是将其包含权限一次性赋予该用户: 常用系统角色 dba 拥有对数