我想设置一些私有方法是有条件可见的,但只限于一个特定的架构,其中容纳我的单元测试。PL/SQL - 基于调用模式的条件编译?
在我的研究中,我一直未能找到一种可以实现这一点的方法。一个包常量显然不起作用,PLSQL_CCFLAGS似乎也无法做到这一点。
我真正想要做的就是像下面 -
$IF USER = 'TEST' $THEN
--all my various procedures that should be hidden from all other users
$END
我还可以勉强接受的方法是仅在当前登录的用户条件下可获得是我TEST
模式,例如SYS_CONTEXT ('USERENV', 'SESSION_USER') = 'TEST'
有什么办法可以做到这一点?我的数据库在Oracle 11g上。我相信这可能超出了CC的能力,因为似乎只有一个编译版本可以同时存在于数据库中。想知道如果我失去了一些东西。
看看你是否可以使用这样的东西:https://docs.oracle.com/cd/B10500_01/appdev.920/a96624/c_wrap.htm –