当前位置: 首页 > 知识库问答 >
问题:

如何将 Azure SQL Database 与 Azure Databricks 连接

邵文乐
2023-03-14

我想连接Azure SQL数据库和Azure Databricks。没有给出选项。连接的技巧是什么。任何人都可以帮我。非常感谢。

共有1个答案

太叔凌龙
2023-03-14

使用SQL服务器身份验证和Spark连接器尝试以下代码:

val config = Config(Map(
  "url"            -> "kkk-server.database.windows.net:1433",
  "databaseName"   -> "MyDatabase",
  "dbTable"        -> "dbo.Clients",
  "user"           -> "login",
  "password"       -> "xxxxxxxx",
  "connectTimeout" -> "5", //seconds
  "queryTimeout"   -> "5"  //seconds
))

使用Active Directory身份验证,您可以尝试以下代码:

import com.microsoft.azure.sqldb.spark.config.Config
import com.microsoft.azure.sqldb.spark.connect._

val config = Config(Map(
  "url"            -> "kkk-server.database.windows.net:1433",
  "databaseName"   -> "MyDatabase",
  "dbTable"        -> "dbo.Clients",
  "user"           -> "AD-account",
  "password"       -> "xxxxxxxx",
  "connectTimeout" -> "5", //seconds
  "queryTimeout"   -> "5"  //seconds
))

val collection = spark.read.sqlDB(config)
collection.show()

如果您对使用令牌的AD身份验证感兴趣,请访问本文。

如果你使用的是Python和Azure Databricks,试试下面的JDBC代码:

jdbcHostname = "xxxxxxx.database.windows.net"
jdbcDatabase = "yyyyyy"
jdbcPort = 1433
#jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2};user={3};password={4}".format(jdbcHostname, jdbcPort, jdbcDatabase, username, password)

jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2}".format(jdbcHostname, jdbcPort, jdbcDatabase)
connectionProperties = {
  "user" : jdbcUsername,
  "password" : jdbcPassword,
  "driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"
}

pushdown_query = "(INSERT INTO test (a, b) VALUES ('val_a', 'val_b')) insert_test" 

本教程可能有助于使用JDBC连接到数据库。

 类似资料:
  • 问题内容: 我正在使用一种简单的代码从Java应用程序访问SQLite数据库。我的代码是 但是这段代码给出了一个异常 我该如何解决,请帮助我。 问题答案: 您需要在类路径中有一个SQLite JDBC驱动程序。 Taro L. Saito(xerial)分叉了Zentus项目,并以sqlite-jdbc的名称进行维护。它捆绑了主要平台的本机驱动程序,因此您无需单独配置它们。

  • 我已经尝试了以下代码: 但它显示了一些错误: New-Object:异常调用". ctor"与"1"参数:"无法加载文件或程序集"System.运行时。InteropServices.RuntimeInformation, Version=4.0.0.0,'区域性=中性, PublicKeyToken=b03f5f7f11d50a3a'或其依赖项之一。系统找不到指定的文件。" at D:\用户\x

  • 这是我发送给Firebase的提交表单:

  • 问题内容: 当我使用MongoChef连接远程mongo数据库时,我使用下一个参数: 服务器 服务器: 本地主机 端口: 27017 SSH隧道 SSH地址: 10.1.0.90 端口: 25 SSH用户 名 : 用户名 SSH密码: 密码 当我与Pymongo连接时,我有以下代码: 但是我有下一个错误: 拜托,您能帮我解决这个问题吗?我做错了什么? 问题答案: 适用于我的解决方案。

  • 我尝试将构建作业从Hudson迁移到Jenkins(2.32.1)。Maven构建工作正常,但是SonarQube的Maven构建步骤不起作用。我使用Jenkins SonarQube插件2.5版。 我的SonarQube配置(下面添加SonarQube扫描仪): 我的构建环境(以下是使用环境变量配置SonarQube扫描器): 日志显示,Jenkins使用了错误的数据库URL(H2而不是Post

  • 我创造了一个新的世界。名为“new_game.xml”的xml文件和名为“new_game.java”的类不是主要活动 新游戏。xml: 新游戏。爪哇: 请你解释得很好 我戴上Androidanifest.xml 这是点击事件 意图myIntent=新意图(v.get上下文(),New_Game.class); startActivityForResult(myIntent,0);