0

EclipseLink JPA を使用して vertica データベースに接続し、結果を取得しています。以下のコードを実行する前に、EntityManager em = ... Query q = em.createQuery ("SELECT x FROM Table x"); を実行します。リスト結果 = q.getResultList ();

最初に、ユーザー ID に対して「SET ROLES ALL」ステートメントを実行する必要があります。JPA でそのようなステートメントを実行する方法。

私を案内してください。

4

1 に答える 1

0

Vertica の場合、次の 2 つのことができます。

  1. ユーザーのデフォルトの役割を設定します。

    alter user myuser default role myrole;
    
  2. Vertica 接続文字列ドキュメント ( https://my.vertica.com/docs/6.1.x/HTML/index.htm#13173.htm )で説明されているように、接続文字列プロパティ「ConnSettings」を使用します。

    JDBC ドライバーがデータベースに接続した後に自動的に実行する SQL ステートメントを含む文字列。このプロパティは、ロケールの設定、スキーマ検索パスの設定、または接続に必要なその他の構成の実行に役立ちます。

    接続文字列は次のようになります。

    jdbc:vertica://myverticaserver/mydb?ConnSettings=SET+ROLE+myrole
    
于 2013-09-18T00:21:17.480 に答える