小编Dzy*_*ann的帖子

如何从包内的另一个模式引用表?

我正在使用 TOAD 在我拥有的模式中创建一个包。我的包使用另一个模式的表。

该包有一个使用游标的过程。当我创建包时,出现编译错误:

正文 509 30 PL/SQL: ORA-00904: : 无效标识符

该错误指向游标的选择正在使用的表,并且该表位于其他架构中。

如果我直接在 TOAD 中运行查询,它会完美运行,我是 Oracle 新手,我不明白为什么会出现此错误。为什么我会收到此错误?

oracle plsql

3
推荐指数
1
解决办法
1万
查看次数

有没有办法只传递一次变量立即执行但多次使用它?

我有一个 Cursor 从脚本中获取数据:

OPEN myCursor FOR
SELECT value1 AS Value1,
  myPackage.function1 (value1, :myId) AS Result1,
  myPackage.function2 (value1, :myId) AS Result2,
  myPackage.function3 (value1, :myId) AS Result3                       
FROM mySchema.myTable
WHERE tpk = :myPk
USING myId, myId, myID
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用了myId变量 3 次,并且必须在 using 语句中将其传递 3 次才能使其工作。我在任何地方都找不到它,但是有没有办法只传递myId变量一次?

oracle plsql

2
推荐指数
1
解决办法
354
查看次数

标签 统计

oracle ×2

plsql ×2