Select ColA
FROM FA_BOOK_CONTROLS FBC,FA_MC_BOOK_CONTROLS FMCBC
WHERE FBC.BOOK_TYPE_CODE = FMCBC.BOOK_TYPE_CODE
AND FBC.SET_OF_BOOKS_ID = FMCBC.PRIMARY_SET_OF_BOOKS_ID
AND FMCBC.SET_OF_BOOKS_ID = nVL(TO_NUMBER(SUBSTRB(USERENV('CLIENT_INFO'),45,10)),-1);
在Oracle视图中看到有个如上的视图,我用此句去查询时,没有结果。
但当oralce report 用到此视图,在oracle application运行报表时,有时能找到值,有时不能找到值,为什么?
USERENV('CLIENT_INFO')是什么意思?我在网上查了,都说得不明白。
FROM FA_BOOK_CONTROLS FBC,FA_MC_BOOK_CONTROLS FMCBC
WHERE FBC.BOOK_TYPE_CODE = FMCBC.BOOK_TYPE_CODE
AND FBC.SET_OF_BOOKS_ID = FMCBC.PRIMARY_SET_OF_BOOKS_ID
AND FMCBC.SET_OF_BOOKS_ID = nVL(TO_NUMBER(SUBSTRB(USERENV('CLIENT_INFO'),45,10)),-1);
在Oracle视图中看到有个如上的视图,我用此句去查询时,没有结果。
但当oralce report 用到此视图,在oracle application运行报表时,有时能找到值,有时不能找到值,为什么?
USERENV('CLIENT_INFO')是什么意思?我在网上查了,都说得不明白。
按“捕获登录计算机的用户名的方法是USERENV('CLIENT_INFO')”这个说法,不是一样吗?
可以通过
exec sys.dbms_application_info.set_client_info('SomeThing');
来设置client_info。
然后用
select userenv('CLIENT_INFO') from dual;
贴中说有时候找不到这个值,应该是有时候没设置引起的吧。
返回当前连接的客户端用户的相关信息
SQL> execute DBMS_APPLICATION_INFO.set_client_info(100);PL/SQL 过程已成功完成。SQL> select userenv('client_info') from dual;USERENV('CLIENT_INFO')
----------------------------------------------------------------
100SQL>