首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从R Studio连接到SQL

如何从R Studio连接到SQL
EN

Stack Overflow用户
提问于 2019-10-08 12:53:37
回答 1查看 1.4K关注 0票数 0

我使用Windows 10上的连接到以下数据库,登录屏幕如下所示:

代码语言:javascript
复制
Server Type:      Database Engine
Server Name:      sqlmiprod.b298745190e.database.windows.net
Authentication:   SQL Server Authentication
Login:            my_user_id
Password:         my_password

这篇最近的R Studio文章提供了一种从R连接到Servers的简单方法,方法如下:

代码语言:javascript
复制
con <- DBI::dbConnect(odbc::odbc(),
                      Driver   = "[your driver's name]",
                      Server   = "[your server's path]",
                      Database = "[your database's name]",
                      UID      = rstudioapi::askForPassword("Database user"),
                      PWD      = rstudioapi::askForPassword("Database password"),
                      Port     = 1433)

我有两个问题

  1. 我应该使用什么作为"[your driver's name]"
  2. 我应该使用什么作为"[your database's name]"

我将使用的服务器路径是sqlmiprod.b298745190e.database.windows.net (从上面),我将把端口留在1433。如果是错的话请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-08 20:43:49

司机

根据@Zaynul的注释和我自己的经验,driver字段是一个带有ODBC驱动程序名称的文本字符串。这个答案包含这方面的更多细节。

你可能想要这样的东西:

  • Driver = 'ODBC Driver 17 for SQL Server' (来自@Zaynul的评论)
  • Driver = 'ODBC Driver 11 for SQL Server' (来自我自己的上下文)

数据库

要连接到的默认数据库。大致相当于启动SQL脚本

代码语言:javascript
复制
USE my_database
GO

如果所有的工作都在一个数据库中,那么就把它的名字放在这里。

在某些情况下,您应该能够保留此空白,但是每次连接到表时,您都必须使用in_schema命令添加数据库名。

如果您正在跨多个数据库工作,我建议将一个数据库的名称放入其中,然后使用in_schema命令在每个连接点指定数据库。

使用in_schema命令(更多细节)的示例:

代码语言:javascript
复制
df = tbl(con, from = in_schema('database.schema', 'table'))

虽然我还没有试过,但是如果您没有模式,那么

代码语言:javascript
复制
df = tbl(con, from = in_schema('database', 'table'))

也应该是有效的(我已经使用这个黑客已经有一段时间了)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58286764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档