You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中通过SQL Server Authentication连接数据库?

解决R中DBI连接SQL Server Authentication身份验证的问题

要通过R的DBI连接采用SQL Server Authentication的数据库,你需要将authentication参数设置为'SqlPassword'——这是ODBC连接字符串中对应该身份验证类型的标准有效值,之前尝试的'SQLServer'和'SQL Server'都不符合规范。

以下是完整的连接代码示例(需搭配odbc包使用):

library(DBI)
library(odbc)

# 建立连接
db_conn <- dbConnect(
  drv = odbc::odbc(),
  Driver = "ODBC Driver 17 for SQL Server", # 根据你安装的驱动版本调整
  Server = "你的服务器地址\\实例名", # 若有实例需加\\,无实例则直接写服务器地址
  Database = "目标数据库名",
  UID = "SQL Server账号",
  PWD = "账号密码",
  Authentication = "SqlPassword"
)

# 验证连接(可选)
dbListTables(db_conn)

# 用完后关闭连接
dbDisconnect(db_conn)

额外注意事项:

  • 确认已安装对应版本的ODBC驱动(推荐ODBC Driver 17或18 for SQL Server),驱动名称必须和代码中Driver参数完全匹配
  • 如果是Windows身份验证,才需要用Authentication = 'ActiveDirectoryIntegrated',而SQL Server身份验证必须用SqlPassword
  • 若服务器有端口号,需在Server参数后添加,端口号,比如Server = "192.168.1.100,1433"

内容的提问来源于stack exchange,提问作者Wallace H

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 07:20:29