PostgreSQLはSQL標準に準拠しており、その場合、識別子(テーブル名、列名など)は、引用符で囲まれている場合を除き、強制的に小文字になります。したがって、次のようなテーブルを作成する場合:
CREATE TABLE APP_USER ...
実際にテーブルapp_user
を取得します 。あなたは明らかにしました:
CREATE TABLE "APP_USER" ...
次に、テーブル"APP_USER"
を取得します 。
Springでは、テーブル名に大文字で通常の文字列を指定しますが、それは引用符なしでPostgreSQLサーバーへのクエリに接続されます。これは、PostgreSQLのログファイルを読み取ることで確認できます。Springが生成したクエリに続いて、メッセージの上部にエラーが表示されます。
Springがエンティティからクエリを作成する方法をほとんど制御できないため、SQL標準の小文字の識別子を使用することをお勧めします。