【问题标题】:Read Only Connection to MSSQL Using R使用 R 到 MSSQL 的只读连接
【发布时间】:2019-04-03 11:13:20
【问题描述】:

我一直在尝试使用 R 启动与 MSSQL 服务器的只读连接,但遇到了问题。

我可以使用 DBI 和 odbc 包只读连接:

library(DBI)
library(odbc)

con <- DBI::dbConnect(
  odbc::odbc(),
  Driver   = "DRIVER",
  Server   = "SERVER",
  Database = "DATABASE",
  UID      = "USERNAME",
  PWD      = "PASSWORD",
  Port     = PORT
)

(或使用连接字符串)

con <- DBI::dbConnect(odbc::odbc(),
.connection_string = "Driver={DRIVER};Uid=USERNAME;Pwd=PASSWORD;Server=SERVER;Port=PORT;Database=DATABASE;")

我假设如果我将ApplicationIntent="ReadOnly"ApplicationIntent=ReadOnly; 添加到各自的代码中,这会起作用,但会导致超时。

我不确定这是否可以使用 ODBC/DBI,任何帮助将不胜感激!

【问题讨论】:

  • 不是在数据库端设置的吗?
  • 使用RODBC 包怎么样?我能够使用RODBC 和命令con &lt;- odbcDriverConnect('Driver=SQL Server;Server=SERVERNAME,1433;Database=DATABSENAME;Trusted_Connection=yes;ApplicationIntent=ReadOnly') 连接到SQL Server 数据库
  • @KerryJackson 这是用于 MSSQL 的吗?我刚刚尝试过并收到网络错误:/。但是,当我删除“ApplicationIntent=ReadOnly”部分时,它可以工作!
  • 是的,它适用于 MS SQL Server,它对我来说没有错误。也许您得到的错误不是因为包RODBCDBI,而是因为您的服务器不允许这样做? stackoverflow.com/questions/15347541/… 可能有一些有用的链接

标签: sql r sql-server odbc dbi


【解决方案1】:

您还可以将用于连接的用户的权限更新为仅查看权限。 以另一种方式解决问题。 否则,您可能会安装和使用: 库(RSQLServer) 自己找一个更好的 SQL 连接库。

【讨论】:

  • 包“RSQLServer”不可用(适用于 R 版本 3.5.3)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-18
  • 2015-11-25
  • 2011-08-31
  • 1970-01-01
相关资源
最近更新 更多