这是事情......我有以下数据源:
<datasource jndi-name="java:/GPET_JU1@des12gpe1" pool-name="GPET_JU1@des12gpe1" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:@//bla:9999/blablabla</connection-url>
<driver>oracle</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<security>
<user-name>blablabla</user-name>
<password>blablabla</password>
</security>
<pool>
<min-pool-size>10</min-pool-size>
<max-pool-size>100</max-pool-size>
<prefill>true</prefill>
<allow-multiple-users></allow-multiple-users>
</pool>
<validation>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"></exception-sorter>
</validation>
<timeout>
<idle-timeout-minutes>10</idle-timeout-minutes>
</timeout>
<statement>
<prepared-statement-cache-size>0</prepared-statement-cache-size>
<share-prepared-statements>false</share-prepared-statements>
</statement>
**<new-connection-sql>
Begin execute immediate 'CALL DBMS_WM.GotoWorkspace ("APP_TESTE_01")'; end;
</new-connection-sql>**
</datasource>
每次调用此数据源以在数据库中创建连接时,我都需要将工作空间从“LIVE”更改为“X”。我得到了:
Caused by: java.sql.SQLException: ORA-06576: not a function or valid method
如果我执行选择而不是尝试更改工作区,我不会收到错误,但显然它不会像我想要的那样改变工作区。
关于如何使用数据源更改oracle db工作区的任何想法?
答案 0 :(得分:0)
通过以下方式获得成功:
<new-connection-sql>
Begin DBMS_WM.GotoWorkspace ('APP_TESTE_01'); end;
</new-connection-sql>