以另一个用户身份执行 Oracle 存储过程

2023-11-21

我主要是一个 Oracle 新手,所以请原谅我,如果这是一个愚蠢的问题......

我有一个名为“CODE”的模式,其中包含执行任意 SQL 的存储过程(目前,请忽略与之相关的潜在安全问题)。传入的SQL会选择数据;但所有数据都驻留在模式 A、B 或 C 中 - 但 SQL 一次只能从一个模式中进行选择。

例如:类型 A 的用户创建字符串“SELECT * FROM A.USERTABLE”,而类型 B 的用户创建字符串“SELECT * FROM B.USERTABLE”。

我想做的是允许用户不显式指定他们的架构。在前端.net应用程序中;我已经知道它们是 A、B 或 C 类型。我希望这三个类型都只需输入“SELECT * FROM USERTABLE”。

我遇到的问题是我不知道该怎么做。我的应用程序只能在“CODE”模式中执行 proc - 所以我不能只复制代码并让用户 A 调用“A.ExecuteSQL”。

我尝试过一些事情;但到目前为止还没有任何效果。我希望 ExecuteSQL 过程保留在 CODE 模式中;但是当“USERTABLE”传入时,我需要它知道有时这意味着 A.USERNAME,有时意味着 B.USERNAME。

有什么建议么?


Use:

ALTER SESSION SET CURRENT_SCHEMA = schema

那就是相当于SQL ServerEXECUTE AS syntax.

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

以另一个用户身份执行 Oracle 存储过程 的相关文章

  • 如何以最少的查询次数获取帖子列表和关联标签

    我的表格结构如下 标签 更多的是一个类别 id 标签名称 描述 slug POSTS ID 标题 网址 邮戳 id idPost idTag USERS ID 用户名 userSlug VOTES id idPost idUser 每个帖子
  • 如何查找 PostgreSQL 数据库的上次更新时间?

    我正在使用一个批量更新的 postgreSQL 数据库 我需要知道数据库 或数据库中的表 上次更新或修改的时间 两者都可以 我看到 postgreSQL 论坛上有人建议使用日志记录并查询日志 这对我不起作用 因为我无法控制客户端代码库 你可
  • postgres 有 CLOSEST 运算符吗?

    我正在寻找这样的东西 给定一个表格 id number 1 7 2 1 25 3 1 01 4 3 0 查询SELECT FROM my table WHEREnumberCLOSEST 1 将返回第 3 行 我只关心数字 现在我有一个程序
  • 替换 Oracle 包的一部分

    我需要修改包内的一个过程 我需要接触声明和实施 由于我正在维护每次修改的补丁文件 因此我希望更改最小化 我可以仅使用更改的过程更新包 如果是 如何更新 还是需要提供完整的包定义和实现 您需要替换整个包规范和主体 您不能仅对包的一部分进行操作
  • sql查询将两列与一列连接起来

    我在 MS Access 2010 中有 2 个表 如下所示 USERS u id u name LOAN l id l from ref users u id l to ref users u id l amount Users u id
  • 使用Powershell访问远程Oracle数据库

    我需要能够连接到我的网络上基于 Windows 7 的 Oracle 服务器 32 位 Oracle XE 我需要连接的机器运行 Windows 7 64 位 两台机器上都安装了 Powershell 我已在 64 位计算机上安装了 Ora
  • Mongodb - 为现有集合添加架构

    我的 MongoDB 中有一个包含 1300 万条记录的集合 不幸的是 当我创建这个集合时 没有为其创建模式 我想知道除了备份整个数据库 创建架构并上传所有数据之外 是否有任何方法可以添加 JSON 架构 您可以使用以下方法将 JSON 架
  • SPARK SQL - 当时的情况

    我是 SPARK SQL 的新手 SPARK SQL 中是否有相当于 CASE WHEN CONDITION THEN 0 ELSE 1 END 的内容 select case when 1 1 then 1 else 0 end from
  • 如何使用PostGIS将多边形数据转换为线段

    我在 PostgreSQL PostGIS 中有一个多边形数据表 现在我需要将此多边形数据转换为其相应的线段 谁能告诉我如何使用 PostGIS 查询进行转换 提前致谢 一般来说 将多边形转换为线可能并不简单 因为没有一对一的映射 http
  • 如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀“N”?

    如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀 N 例如 给定这个变量 declare Query1 nvarchar max 我可以这样分配它 set Query1 N 但是如果我想使用怎么办
  • 如何将可视选择的文本通过管道传输到 UNIX 命令并将输出附加到 Vim 中的当前缓冲区

    使用 Vim 我尝试将在可视模式下选择的文本通过管道传输到 UNIX 命令 并将输出附加到当前文件的末尾 例如 假设我们有一个 SQL 命令 例如 SELECT FROM mytable 我想做如下的事情
  • 更改迁移中的自动​​增量值(PostgreSQL 和 SQLite3)

    我有一个托管在 Heroku 上的项目 想要更改表的自动增量起始值 我在本地使用 SQLite3 Heroku 使用 PostgreSQL 这是我在迁移中所拥有的 class CreateMytable lt ActiveRecord Mi
  • Oracle:使用SQL或PL/SQL查找动态SQL中的错误位置

    如何在 PL SQL 或 SQL 中找到动态 SQL 语句中的错误位置 从 SQL Plus 中 我看到了错误的位置 例如 无效的 SQL DML 语句 SYS orcl gt SELECT 2 X 3 FROM 4 TABLEX 5 TA
  • 分层查询

    我希望我能够解释困扰我的问题 我有以下分层数据集 这只是 34K 记录的子集 PARENT ID CHILD ID EXAM TUDA12802 TUDA12982 N TUDA12982 TUDA12984 J TUDA12984 TUD
  • SQL 删除表并重新创建并保留数据

    在我们最初的设计中 我们搞砸了表中的外键约束 现在表已充满数据 我们无法在不删除表中所有记录的情况下更改它 我能想到的唯一解决方案是创建一个备份表并将所有记录放在那里 然后删除所有记录 更改表并开始将它们添加回来 还有其他 更好 的想法吗
  • Mysql 中 UNION 子句的替代方案

    我有两张桌子 表 a 表 b table a ID 1 2 3 4 5 7 table b ID 2 3 4 5 6 我必须得到这样的输出而无需UNION命令 ID 1 2 3 4 5 6 7 注意 我有一个联合解决方案 select fr
  • 在sqlite SQL语句中与order by子句结合使用limit

    下面的两条 SQL 语句总是会产生相同的结果集吗 1 SELECT FROM MyTable where Status 0 order by StartTime asc limit 10 2 SELECT FROM SELECT FROM
  • sql server 按组排名

    问题看似简单 但我却无法理解 这是针对 sql 服务器的 what I have in a table What I need as a output cksum id cksum id 2162514679 204 2162514679
  • 通过 Oracle 的数据库链接运行 SQL Server 存储过程

    参考如何通过数据库链接执行 Oracle 存储过程 https stackoverflow com questions 240788 how to execute an oracle stored procedure via a datab
  • Oracle TDE 能否保护数据免受 DBA 的侵害?

    甲骨文专家 我的客户想要部署一个必须在数据库中保存信用卡号的应用程序 客户显然很关心安全性 我们特别关注一个令人痛苦的问题 我们如何确保只有具有 业务需要知道 的授权用户才可以访问数据 我们如何保护数据免受 DBA 的侵害 一个明显的解决方

随机推荐

  • 如何使用 R 允许用户进行多个输入?

    例如 如果我需要用户指定矩阵的行数和列数 提示 行数 用户输入 数字 我需要 R 等待 输入 然后将 一个数字 保存到变量v1中 下一个 提示 列数 用户输入 另一个号码 同时将 另一个数字 保存到变量v2中 最后 我将有两个变量 v1 v
  • DENSE_RANK 根据特定顺序

    您好 我有一个数据表 我想根据排序的日期顺序输出从第一组名称开始的名称的密集排名 例如 DROP TABLE MyTable SELECT INTO MyTable FROM VALUES 2015 12 23 ccc 2015 12 21
  • 抑制 Java 中已弃用的导入警告

    在 Java 中 如果导入已弃用的类 import SomeDeprecatedClass 您会收到此警告 The type SomeDeprecatedClass is deprecated 有没有办法抑制这个警告 为了避免警告 做not
  • 如何在express Node js中获取删除请求的参数

    我对nodejs比较陌生 如何获取Delete请求传递的value参数 我正在使用节点express js 感谢advs 您可以使用 req body 来获取您发送的值 eg router delete test function req
  • HTML Canvas - 圆圈周围的虚线描边

    我确实知道在画布上渲染点划线没有原生支持 但我已经看到人们能够为此提供支持的聪明方法 我想知道是否有任何方法可以翻译它以允许在形状 特别是圆形 周围渲染点状笔划 最简单的方法使用context setLineDash ctx setLine
  • nodejs socket.io 无法连接到服务器?

    我整个下午都在盯着node js 和socket io 示例 我正在尝试拼凑一个简单的页面 它会告诉我有多少用户连接到了服务器 我已阅读以下文档http socket io 以及这里的一些教程 问题准确地概述了我正在尝试做的事情 我也发现了
  • 用户看不到 mysql 工作台中的数据库

    我正在尝试使用 Spring Roo 来学习本教程 所以 我所做的是 转到 mysql 工作台 创建一个名为 pizzashop 的新模式 通过服务器管理帐户访问本地主机 在 用户和权限 中创建一个名为 pizzashop 和密码 pizz
  • Scala Spark,列表缓冲区为空

    在注释 1 中的这段代码中 列表缓冲区项的长度正确显示 但在第二条注释中代码永远不会执行 为什么会出现这种情况呢 val conf new SparkConf setAppName app setMaster local val sc ne
  • “ActionView::Template::Error(未预编译)”在“image_tag nil”上引发

    如果我没有正确处理视图 生产环境将显示 500 这可能是 但我有点粗心 好几次都忘记了这个问题 我怎样才能防止这种情况发生 我该如何使用在生产环境中不加500 image tag必须有一个源 Rails 无法对其执行任何操作 但会引发异常
  • Python:将 3D 数组中的值存储到 csv

    我有以下问题 我有一个 3D 数组 例如matrix np zeros 30 30 100 其中每个条目都是一个坐标并获取一个值 所以matrix 0 0 0 是坐标 x 0 y0 z 0 且值为 0 现在我想将所有值存储在 csv 中 如
  • 使用 Django Rest Framework 和 IOS 应用程序时要使用哪种身份验证?

    我有一个 iOS 应用程序 它使用由 Django REST 框架提供支持的 API 来存储 更新 从数据库中获取数据 我需要提供以下两个功能 将用户数据存储在服务器上 使用电子邮件登录 使用 Facebook 登录 我可以使用两种不同的身
  • 如何动态地将内容加载到 JavaFX 选项卡?

    我有一个 GUI 是使用 JavaFX 和 FXML 制作的 该 GUI 有很多组件 但并非一次性需要所有组件 例如 想象一个 GUI 从其服务器部分接收城市列表 每个城市都在其自己的选项卡上进行描述 并用很多节点进行描述 该城市集包含 3
  • iOS 7 应用程序图标、启动图像和命名约定,同时保留 iOS 6 图标

    我刚刚在 iOS 6 上完成了一个应用程序 并在一周前购买了一个开发者帐户 因此没有太多时间使用 iOS 7 SDK 刚刚下载了 Golden Master 版本并尝试升级我的应用程序以与 iOS 7 兼容 我意识到 iOS 7 需要对应用
  • Python 日志记录:disable() 的反向影响

    The 记录文档说调用logging disable lvl 方法可以 暂时限制整个应用程序的日志输出 但我很难找到 暂时 以以下脚本为例 import logging logging disable logging CRITICAL lo
  • ImageView 上的透明视图

    我被堵在那里了 我试图在背景上放置一个透明视图 我尝试了几种方法 通过 XML android background color transparent or android color 80000000 或者像这样引用 color xml
  • C++ 中的大文件支持

    64 位文件 API 在每个平台上都不同 在窗口中 fseeki64在Linux中 fseeko在 freebsd 中 另一个类似的调用 如何才能最有效地使其更加方便和便携 有什么有用的例子吗 大多数基于 POSIX 的平台都支持 FILE
  • 使用 Boost 进行进程间读取器/写入器锁定

    这个线程在解释如何使用 Boost 实现读取器 写入器锁时 它是黄金 它看起来相对简单 我真的很喜欢它 但它似乎也使用了非命名锁 我需要一个进程间解决方案 不需要是可移植的 可以仅适用于 Windows 有没有办法实现进程间shared m
  • 使用 ODATA 过滤 x 和 y 之间的日期

    我正在研究新的 ASP NET Web API 作为报告工具 在 SQL 中我会这样做 WHERE order date BETWEEN to date 2003 01 01 yyyy mm dd AND to date 2003 12 3
  • 什么xsd会让一个元素无限地拥有自己作为子元素?

    我如何创建一个 xsd 来为我提供这种可以无限继续的 xml 结构
  • 以另一个用户身份执行 Oracle 存储过程

    我主要是一个 Oracle 新手 所以请原谅我 如果这是一个愚蠢的问题 我有一个名为 CODE 的模式 其中包含执行任意 SQL 的存储过程 目前 请忽略与之相关的潜在安全问题 传入的SQL会选择数据 但所有数据都驻留在模式 A B 或 C