是否可以为ActiveMQ生成的SQL查询配置模式名称?
我想查询:select * from myschema.ACTIVEMQ_MSGS...
而不是select * from ACTIVEMQ_MSGS...
我可以为我的PostgreSQL用户设置默认架构,但这不是真正的专业....
答案 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...