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,您可以做两件事:

  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 回答