如何为sql查询配置模式名称

时间:2015-05-22 16:38:11

标签: activemq

是否可以为ActiveMQ生成的SQL查询配置模式名称?

我想查询:select * from myschema.ACTIVEMQ_MSGS...而不是select * from ACTIVEMQ_MSGS...

我可以为我的PostgreSQL用户设置默认架构,但这不是真正的专业....

2 个答案:

答案 0 :(得分:0)

使用BasicDataSource,您可以使用connectionInitSqls在连接开始时选择架构(适用于Oracle):

<bean id="postgres-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
    ...
    <property name="connectionInitSqls">
        <list>
            <value>SET SCHEMA 'myschema'</value>
        </list>
    </property>
 value=""/>
</bean>

或者您可以配置ActiveMQ生成的语句:

  <persistenceAdapter>
    <journaledJDBC ...>
      <statements>
        <statements tablePrefix="myschema."/>
      </statements>
    </journaledJDBC>
  </persistenceAdapter>

答案 1 :(得分:0)

我有SQL Server,我用以下代码解决了它:

String connectionUrl = "jdbc:sqlserver://YYY.database.windows.net;databaseName=XXX;user=ZZZ@YYY;password=TTT;authenticationScheme=dbo";

    BasicDataSource bds = new BasicDataSource();
    bds.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    bds.setUrl(connectionUrl);
    bds.set...