如何使用 jaydebeapi 连接到 bigquery

问题描述

搜索了 3 天的解决方案,但失败了。我正在尝试使用 Python 3.7 和 jaydebeapi 从我的 Mac 连接到 BigQuery。代码

from glob import glob
my_jar = glob('/BigQuery/simba_jdbc_1.2.4.1007/*.jar')
print(my_jar)

myJDBC = '''
jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;OAuthType={OAuthType};ProjectId={ProjectId};OAuthServiceAcctEmail={OAuthServiceAcctEmail};OAuthPvtKeyPath={OAuthPvtKeyPath};
'''.format(OAuthType=0,ProjectId='ProjectId',OAuthServiceAcctEmail="etl@ProjectId.iam.gserviceaccount.com",OAuthPvtKeyPath="/BigQuery/etl.json")

my_query = '''
select * from test.test limit 10
'''

import jaydebeapi
try:
    conn = jaydebeapi.connect("com.simba.googlebigquery.jdbc42.Driver",myJDBC,my_jar)
    curs = conn.cursor()
    curs.execute(my_query)
    df = curs.fetchall()
except Exception as e:
    print(str(e))

我收到错误

Class com.simba.googlebigquery.jdbc42.Driver is not found

但是我已经把所有的罐子都包括在了文件夹中。当我将该文件夹与 DBeaver 一起使用时,它连接成功。非常感谢任何帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...