我可以将R与Vertica连接,但是当我尝试从Vertica获取数据时,我收到以下错误消息:
[Vertica][VJDBC](3580) ERROR: Insufficient privilege: USAGE on SCHEMA 'bi_analysts' not granted for current user
这是我的代码:
library(RJDBC)
vDriver <- JDBC(driverClass="com.vertica.jdbc.Driver",
classPath="my_path/vertica-jdbc-7.0.1-0.jar")
vertica <- dbConnect(vDriver, "jdbc:vertica://...",
"my_uid", "my_pwd")
myquery= dbSendQuery(vertica, "my_query")
我想我应该这样做:
query = dbSendQuery(vertica, "SET ROLE bi_analysts")
但如果我尝试这样做,我会收到相同的错误消息。
答案 0 :(得分:0)
dbSendUpdate(vertica, "SET ROLE BI_ANALYST")
(dbSendUpdate不返回任何结果集!)
答案 1 :(得分:0)
要避免这种情况,请确保将角色设为用户的默认角色。
请参见此处的示例:
ALTER USER user_name DEFAULT ROLE role_name;
- 这样你每次都不需要运行set role