通过 JDBC 在 DataGrip 中使用 BigQuery
Using BigQuery in DataGrip with JDBC
有人能够在 JetBrains DataGrip 中使用 BigQuery 的新 JDBC 驱动程序吗?
我已经完成了这些步骤
- 使用所有 jar 文件在 DataGrip 中创建了一个驱动程序
- 创建了一个带有服务帐户文件的连接字符串的数据库
连接测试显示成功,但是当我尝试查询某些内容时,我收到错误消息:
java.lang.ClassNotFoundException: com.google.api.client.json.JsonFactory
我已将 Simba ZIP 中的以下文件添加到 DataGrip 驱动程序中:
- GoogleBigQueryJDBC42.jar
- jackson-core-2.1.3.jar
- google-api-client-1.22.0.jar
- google-api-services-bigquery-v2-rev320-1.22.0.jar
- google-http-client-1.22.0.jar
- google-http-client-jackson2-1.22.0.jar
- google-oauth-client-1.22.0.jar
所以我不确定下一步该做什么。我尝试在 DataGrip 中更改它们的顺序,但似乎没有什么不同。
我认为我的连接字符串看起来也不错:
jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId=...;OAuthType=0;OAuthPvtKeyPath=...;OAuthServiceAcctEmail=...;
当工具中未正确引用驱动程序 JAR 文件时,您可能会遇到此错误。我列出了我用来通过 DataGrip 连接到 BigQuery 的步骤。
- 通过添加 zip 中的所有 JAR 文件来添加新驱动程序。应在此步骤中从 "Class" 下拉列表中选择正确的 class 名称。
- 通过选择新创建的 BigQuery JDBC 驱动程序添加新数据源。在此步骤中提供正确的连接 URL。
- 如果测试连接成功,请为同一数据源创建一个新查询。
- 确保您的查询使用正确的格式 "dataset.tablename" 并且 运行 在您刚刚测试的数据源上。
对我来说,用 Json 替换 P12 是可行的。但是,由于各种 query/incompatibility 问题,无法使用 DataGrip 或通常 JDBC 访问 BigQuery。
这个视频可以参考:https://www.youtube.com/watch?v=r9l2c_aQPoQ&ab_channel=JetBrainsTV
在 JetBrains DataGrip 中为 BigQuery 使用新的 simba jdbc 驱动程序。它一一涵盖了工作设置的所有步骤。
引用此视频的博客如下:https://blog.jetbrains.com/datagrip/2018/07/10/using-bigquery-from-intellij-based-ide/
可以在以下位置下载驱动程序:https://cloud.google.com/bigquery/providers/simba-drivers
注意:确保通过博客上的评论进行身份验证,而无需在 gcp 上创建服务帐户。
希望对您有所帮助!
有人能够在 JetBrains DataGrip 中使用 BigQuery 的新 JDBC 驱动程序吗?
我已经完成了这些步骤
- 使用所有 jar 文件在 DataGrip 中创建了一个驱动程序
- 创建了一个带有服务帐户文件的连接字符串的数据库
连接测试显示成功,但是当我尝试查询某些内容时,我收到错误消息:
java.lang.ClassNotFoundException: com.google.api.client.json.JsonFactory
我已将 Simba ZIP 中的以下文件添加到 DataGrip 驱动程序中:
- GoogleBigQueryJDBC42.jar
- jackson-core-2.1.3.jar
- google-api-client-1.22.0.jar
- google-api-services-bigquery-v2-rev320-1.22.0.jar
- google-http-client-1.22.0.jar
- google-http-client-jackson2-1.22.0.jar
- google-oauth-client-1.22.0.jar
所以我不确定下一步该做什么。我尝试在 DataGrip 中更改它们的顺序,但似乎没有什么不同。
我认为我的连接字符串看起来也不错:
jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId=...;OAuthType=0;OAuthPvtKeyPath=...;OAuthServiceAcctEmail=...;
当工具中未正确引用驱动程序 JAR 文件时,您可能会遇到此错误。我列出了我用来通过 DataGrip 连接到 BigQuery 的步骤。
- 通过添加 zip 中的所有 JAR 文件来添加新驱动程序。应在此步骤中从 "Class" 下拉列表中选择正确的 class 名称。
- 通过选择新创建的 BigQuery JDBC 驱动程序添加新数据源。在此步骤中提供正确的连接 URL。
- 如果测试连接成功,请为同一数据源创建一个新查询。
- 确保您的查询使用正确的格式 "dataset.tablename" 并且 运行 在您刚刚测试的数据源上。
对我来说,用 Json 替换 P12 是可行的。但是,由于各种 query/incompatibility 问题,无法使用 DataGrip 或通常 JDBC 访问 BigQuery。
这个视频可以参考:https://www.youtube.com/watch?v=r9l2c_aQPoQ&ab_channel=JetBrainsTV 在 JetBrains DataGrip 中为 BigQuery 使用新的 simba jdbc 驱动程序。它一一涵盖了工作设置的所有步骤。
引用此视频的博客如下:https://blog.jetbrains.com/datagrip/2018/07/10/using-bigquery-from-intellij-based-ide/
可以在以下位置下载驱动程序:https://cloud.google.com/bigquery/providers/simba-drivers
注意:确保通过博客上的评论进行身份验证,而无需在 gcp 上创建服务帐户。
希望对您有所帮助!