1

休止状態の POJO クラスとマッピングを使用して Postgresql db にアクセスしています。「OCS」と呼ばれる新しいスキーマを追加しましたが、クラスとマッピングを生成できません。hibernate.cfg.xml は次のとおりです。

 <property name='hibernate.connection.driver_class'>org.postgresql.Driver</property>
  <property name='hibernate.connection.url'>jdbc:postgresql://test/test_mytest</property>

  <property name='hibernate.connection.username'>username</property>
  <property name='hibernate.connection.password'>password</property>
  <property name='hibernate.connection.pool_size'>10</property>
  <property name='show_sql'>true</property>
  <property name='dialect'>org.hibernate.dialect.PostgreSQLDialect</property>
4

1 に答える 1

4

PostgreSQL のデフォルトの検索パスに影響を与える方法はいくつかあります。

  1. postgresql.conf でグローバルに設定できます (何かを追加してsearch_path=ocs再起動します)。これは鈍いツールであり、お勧めしません。

  2. db に設定できます。 ALTER DATABASE mydb set search_path=ocs これは悪いオプションではありません。データベースに制限しますが、データベースに接続するすべてのアプリケーションのデフォルトにするため、まだ鈍いかもしれません.

  3. ユーザーに設定できます。 ALTER USER myuser SET search_path=ocs ユーザーが複数のデータベースに接続していて、多くのデータベースがこのスキーマを持っていない場合、これはうまく機能しません.....

  4. セッションで設定できます。接続したら、次の SQL を送信するだけです。 SET search_path=ocs

于 2013-06-05T14:02:21.410 に答える