在Java中设置默认架构名称

时间:2012-08-22 09:33:09

标签: java sql database oracle schema

我正在从我的Java代码执行以下查询:

SELECT * FROM JSTORE.EMPLOYEE

其中'JSTORE'是架构名称,'EMPLOYEE'是表格。

我可以设置模式名称以用作JSTORE,这样我就不需要在查询中指定它吗?我正在使用Oracle数据库。

2 个答案:

答案 0 :(得分:2)

如果该模式名称与应用程序用于连接数据库的用户名相同,则无需指定模式名称(通过Java或SQL * Lite)。

如果模式名称因应用程序而异,那么我可能会在SQL中出现模式名称以避免错误。如果您在连接池中更改了SESSION,请考虑可能出现的问题。它仍然是可配置的,并且可以使用一些Java代码自动生成过程来为您生成SQL(无论如何您都应该使用它)。

答案 1 :(得分:2)

您可以执行此SQL:

ALTER SESSION SET CURRENT_SCHEMA=JSTORE

请注意,您需要为每个现在建立的连接执行此操作(一个Oracle会话==一个Java连接对象)。

使用池化连接时要小心;如果它们需要不同的模式,则需要在将它们返回池之前恢复默认模式。

相关问题