Java コードから以下のクエリを実行しています。
SELECT * FROM JSTORE.EMPLOYEE
「JSTORE」はスキーマ名、「EMPLOYEE」はテーブルです。
クエリでスキーマ名を常に指定する必要がないように、スキーマ名を JSTORE として使用するように設定できますか? 私はOracleデータベースを使用しています。
次の SQL を実行できます。
ALTER SESSION SET CURRENT_SCHEMA=JSTORE
作成する now 接続ごとにこれを実行する必要があることに注意してください (1 つの Oracle セッション == 1 つの Java 接続オブジェクト)。
プールされた接続を使用する場合は注意してください。異なるスキーマが必要な場合は、プールに戻す前にデフォルトを復元する必要があります。
そのスキーマ名が、アプリケーションがデータベースへの接続に使用しているユーザー名と同じ場合、(Java または SQL*Lite を介して) スキーマ名を指定する必要はありません。
アプリケーションによってスキーマ名が異なる場合は、間違いを避けるためにスキーマ名を SQL に含めます。接続プールで ALTER SESSION を実行すると、何が問題になるかを考えてみてください。それはまだ構成可能であり、Javaコードを使用してSQLを生成するプロセスを自動化できます(おそらくとにかく持っているはずです)。