Oracle - 如何向用户授予对另一个用户的对象的权限

2024-06-23

我需要授予用户 TARGETUSER 选择/插入/更新用户 SOURCEUSER 的所有表的权限(我可以从here https://stackoverflow.com/questions/187886/grant-select-on-all-tables-owned-by-specific-user)以及运行所有存储过程的能力。

基本上,如果我可以为 TARGETUSER 提供使用 SOURCE_USER 对象进行所有非 ddl 活动的能力,我不会抱怨。我该怎么做呢?


您可以编写一个简单的过程来执行此操作:

BEGIN
  FOR Rec IN (SELECT object_name, object_type FROM all_objects WHERE owner='SOURCEUSER' AND object_type IN ('TABLE','VIEW','PROCEDURE','FUNCTION','PACKAGE')) LOOP
    IF Rec.object_type IN ('TABLE','VIEW') THEN
      EXECUTE IMMEDIATE 'GRANT SELECT, UPDATE, INSERT, DELETE ON SOURCEUSER.'||Rec.object_name||' TO TARGETUSER';
    ELSIF Rec.object_type IN ('PROCEDURE','FUNCTION','PACKAGE') THEN
      EXECUTE IMMEDIATE 'GRANT EXECUTE ON SOURCEUSER.'||Rec.object_name||' TO TARGETUSER';
    END IF;
  END LOOP;
END;

不确定您还要求什么。您可以修改上述内容,为要提供给 targetuser 的权限添加额外的授予和/或 object_types。正如 @stili 所暗示的,您可以使用角色做很多事情,但要小心 - 有些权限在通过角色授予时不起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Oracle - 如何向用户授予对另一个用户的对象的权限 的相关文章

  • Oracle 中仅在一列上不同

    我想在下表中使用不同的值 但仅在 PlayerID 列上使用 这就是我现在所拥有的 MATCHID PLAYERID TEAMID MATCHDATE STARTDATE 20 5 2 14 JAN 12 01 JUN 11 20 5 4
  • 如何创建从表中最大值开始的 Oracle 序列?

    尝试在 Oracle 中创建一个以特定表中的最大值开始的序列 为什么这不起作用 CREATE SEQUENCE transaction sequence MINVALUE 0 START WITH SELECT MAX trans seq
  • MySQL 的 TEXT 类型的 Oracle 等效项

    Oracle 是否有与 MySQL 等效的列类型TEXT type 如果不是 那么通常如何存储较大的文本块 BLOB varchar 32767 如果重要的话 它是通过 PHP 访问 Oracle 10 历史背景是非常受欢迎的 Oracle
  • 如何使用 tnsname 从 Ant 连接到 Oracle 数据库?

    我正在寻找类似于 Ant sql 任务的东西 但它将接受以下格式的 JDBC url jdbc oracle thin TNS NAME 一种可能的方法似乎是编写我自己的 Ant 任务 该任务使用 OracleDataSource 来创建连
  • 如何编写Alter Table并添加新列?

    我有一个表 有 3 列 A B C 其中也有行 A 列是主键 现在 根据新的要求 我需要添加新的 D E 和 F 列 另外 我需要从 A 列中删除以前的主键 并为 D 列添加新的主键 E 列和 F 列为 NULL 请帮助我创建 alter
  • cx_Oracle 和数据源范例

    有一个 Java 范例用于在 Java 中实现数据库访问DataSource 该对象围绕数据库连接的创建创建了一个有用的抽象 这DataSource对象保留数据库配置 但只会根据请求创建数据库连接 这允许您将所有数据库配置和初始化代码保留在
  • 如何将oracle中的number(7,2)更改为varchar?

    I m using Oracle 10g I want to append to all values in sal column To acomplish this first I m trying to change data type
  • 无法加入交易

    我有问题 我已经在 Windows 中设置了 1 个 sql 服务器 SQL Server 2014 Express 并在另一台服务器的 Linux 中设置了 1 个 Oracle 数据库服务器 11g 现在我想通过链接服务器将数据从SQL
  • 删除带有全局索引的分区表?

    PROCEDURE purge partitions p owner IN VARCHAR2 p name IN VARCHAR2 p retention period IN NUMBER IS BEGIN FOR partition re
  • UNION 与 WHERE 子句

    我正在做一个UNIONOracle 数据库上的两个查询 他们俩都有一个WHERE条款 如果我这样做的话 性能会有什么不同吗 WHERE after UNION与执行查询相比UNION after WHERE clause 例如 SELECT
  • 金钱计算,Java 和 Oracle/PL SQL 的使用比较

    大家可以对 Oracle PL SQL 和 Java 在处理货币计算时的优缺点进行很好的比较 如果您要开发一个需要处理大量资金计算的应用程序 您会使用这两者中的哪一个 为什么 这个问题并不是要引发oracle pl sql和java爱好者之
  • 我应该对表进行分区/子分区吗?

    Case 系统有dispositives 基本上由id type name 我可能有N个dispositives 我有一张桌子来存放log of all dispositives 这是系统中最大的表 现在统计100英里记录 The log表
  • Oracle数据库中的自增主键

    我想在 SQL Server 的列中实现标识或自动递增值 CREATE TABLE RollingStock Id NUMBER IDENTITY 1 1 Name Varchar2 80 NOT NULL 如何才能做到这一点 正如 Orb
  • oracle中如何让null等于null

    我有一个变量被传递到我的存储过程 它是一个过滤器 基本上 但是 该字段有时可能为空 如果是 我希望能够检查该字段为空的行 例如 Table A VALUE COLUMN FILTER COLUMN A NULL B NULL C NULL
  • 如何在不使用 DESCRIBE 命令的情况下描述 Oracle 中的表?

    我在上一门课时遇到了困难 我们需要编写一个 Oracle 脚本 其作用就像 DESCRIBE 命令一样 我们正在使用的这本书对如何使用数据字典的描述非常糟糕 不是寻找答案 而是寻找正确的方向 您正在寻找USER TAB COLUMNS ht
  • ORACLE 更新并返回 OLD 和 NEW 值

    PL SQL Oracle 12c 中是否有与此 T SQL 查询等效的内容 UPDATE A SET A columnA 10 WHERE A columnB lt 30 OUTPUT INSERTED DELETED 查询更新表A 同时
  • 非特权、非 root 用户无需 root 或 sudo 即可启动或重新启动 Webserver 服务器(例如 nginx)

    我正在使用 capistrano 部署 Rails Web 应用程序 我想为网络服务器上的部署用户提供尽可能少的权限 作为非特权用户 除了重新启动网络服务器之外 我能够做我需要做的一切 我在 ubuntu 服务器上执行此操作 但这个问题并非
  • 如何加载大量字符串与oracle数据库匹配?

    我目前正在学习 PL SQL 所以我还是一个新手 假设您有一个生产数据库 并使用 Oracle SQL Developer 连接到该数据库 您对该数据库仅有读取权限 因此您无法创建或编辑任何表 我的问题是 如果我有一个很大的 ID 列表 我
  • 物化视图快速刷新-更新基表时插入和删除

    大家好 Stackoverflowers 的朋友们 TLDR MVIEW 是否使用UPDATE or DELETE INSERT刷新期间 前一段时间 当我在 Oracle 中摆弄物化视图时 遇到了一件晦涩难懂的事情 这是我的例子 2 个基表
  • 如何在Oracle中获取每周数据

    我制作了一个矩阵报告 其中需要根据选择参数动态显示列 我有一个日期选择参数 如果我在选择参数上选择日期为 03 01 2010 2010 年 3 月 1 日 那么它应该显示为 3 月 1 日 3 月 7 日 这取决于你追求什么 如果您在接下

随机推荐

  • “word-wrap”css 属性中的“anywhere”是什么意思?

    我刚刚注意到在 Firefox 中 我认为在 Chrome 中也是一样 属性 word wrap 有一个名为 anywhere 的新属性值 它有什么作用 我记得使用正常 默认 或断词 对于大多数用途 但 任何地方 是什么意思 它与 破词 有
  • 如何在 Guice 中进行需要注入实例的动态绑定?

    我想创建一个将实例动态绑定到命名注释的模块 用例是我想自动将配置中的值与属性文件中的键绑定为 Named 值 但是 配置绑定在不同的模块中 因此我需要注入配置 我看过的解决方案是 绑定在configure 方法中 此方法未注入 我无法获取基
  • 触发 OnPropertyChanged 的​​更好方法

    我们有一个遵循 MVVM 模式的 WPF 项目 在视图模型中有很多代码 如下所示 private string m Fieldname public string Fieldname get return m Fieldname set m
  • Swift 中的动态类转换

    我正在尝试动态转换为 Swift 中的类 这可能吗 这是我尝试使用的代码 let stringClass AnyClass NSString self let anyObject AnyObject foo let string anyOb
  • 使用 Pandas 模拟 Excel AverageIF

    我正在尝试在 Pandas 中模拟日期范围内的 Excel 的 AVERAGEIFs 函数 但到目前为止尚未成功 我知道我需要使用 apply 和 groupby 但显然我的语法不正确 因为我收到此错误 TypeError can only
  • 当 git 说它正在“解决增量”时,它在做什么?

    在存储库的第一次克隆期间 git 首先接收对象 然后花费大约相同的时间 解析增量 在克隆的这个阶段实际上发生了什么 的阶段git clone are 接收存储库数据库中所有对象的 pack 文件 为收到的包创建索引文件 查看头部修订版 显然
  • 使用 Linq C# 检查 XML 节点是否具有属性?

    如何检查节点是否确实具有特定属性 我有一个包含几个节点的 XML 文件 如下所示
  • 在 PHP 中解析 CFML 标签

    背景 我一直在跑步a site http www gastronomicfightclub com 过去 5 年一直在博客平台上 我选择在自己的服务器上托管该网站 并通过 FTP 发布 我的服务器正在运行 ColdFusion 因此我决定利
  • 使用 python requests 模块登录网站

    我正在尝试使用 python 请求模块登录网页 我在使用 chrome 提交登录表单并重新检查该表单的代码时捕获了发布请求 下面的代码片段中提到了网站以及参数 根据某人的帖子 我能够创建一个尝试登录和访问受保护内容的 python 代码片段
  • Selenium 看不到 AngularJS 页面元素

    我在编写 Selenium 测试来检查我的应用程序时遇到问题 我想测试的是 当用户输入正确的登录名 密码时 会显示正确的页面并且用户已登录 主要问题是我的登录表单是作为 AngularJS 指令生成的 我有两个不同的登录页面 并且该指令在两
  • 使用间接的动态 Vlookup

    我在使用间接函数时遇到问题 这就是我正在寻找的内容 我正在尝试根据当前选项卡创建动态 vlookup VLOOKUP B3 NH BBC E 1 Z 188 MATCH Share Outstanding NH BBC E 1 Z 1 0
  • Typescript Promise 拒绝类型

    如何设置拒绝承诺的类型 假设我这样做 const start Promise
  • 带着色器的 HUD (opengl-es 2.0)

    如何在opengl es 2 0上使用着色器绘制HUD 我有一个在屏幕上绘制纹理四边形的着色器 它使用 MVP 矩阵 四边形有自己的顶点 独立于视图位置等 MVP 矩阵的原因 Matrix frustumM mProjMatrix 0 ra
  • imageView 在 Nexus 5 (Android 6.0) 中不显示

    我在RelativeLayout中有一个ImageView
  • 将一个范围分组到一个范围

    我有一张桌子 tblUnit ID Name PriceFrom PriceTo 1 Audi 170 340 2 BMW 250 290 3 Ford 275 500 4 Kia 110 250 5 VW 135 460 然后我预先定义了
  • 如何在 Lumen 中使用辅助函数?

    credentials app path 结果是 Symfony Component Debug Exception FatalThrowableError 调用 未定义函数 App LtClasses app path 但它在这里被列为助
  • 如何为使用 NPOI 创建的 Excel 中的单元格设置验证

    我使用以下命令创建了一个 excel 文件NPOI使用以下代码 var workbook new HSSFWorkbook var sheet workbook CreateSheet Candidate Add header labels
  • 声明内容提供商

    这是我第一次使用内容提供商 但我遵循了开发者文档 http developer android com guide topics providers content providers html但是当我运行该程序时它告诉我failed to
  • TypeScript 中的“const”关键字

    为什么 TypeScript 中类成员不能有 const 关键字 我在以下位置找不到任何有关它的有用信息TypeScript 文档网站 http www typescriptlang org Handbook classes 为什么 Typ
  • Oracle - 如何向用户授予对另一个用户的对象的权限

    我需要授予用户 TARGETUSER 选择 插入 更新用户 SOURCEUSER 的所有表的权限 我可以从here https stackoverflow com questions 187886 grant select on all t