无法打开R和SQL Server之间的连接
我编辑了这篇文章,添加了上面所有的屏幕截图,以防任何人都能发现我的错误。我按照下面的示例在这里实现了这一点:。我似乎完全遵循他们在视频中所做的,但它仍然不起作用 原职: 我刚刚在家用电脑上安装了ms sql server management studio。我正试图通过R studio将数据表导入sql server 我运行了以下代码:无法打开R和SQL Server之间的连接,r,sql-server,odbc,R,Sql Server,Odbc,我编辑了这篇文章,添加了上面所有的屏幕截图,以防任何人都能发现我的错误。我按照下面的示例在这里实现了这一点:。我似乎完全遵循他们在视频中所做的,但它仍然不起作用 原职: 我刚刚在家用电脑上安装了ms sql server management studio。我正试图通过R studio将数据表导入sql server 我运行了以下代码: library(RODBC) connection <- odbcDriverConnect( "driver = {SQL Server};
library(RODBC)
connection <- odbcDriverConnect(
"driver = {SQL Server};
server = DESKTOP-4M7G7RU\\SQLEXPRESS;
database = master;
trusted_connection = true;
uid = DESKTOP-4M7G7RU/mogwa"
)
现在请记住,我是一个彻头彻尾的傻瓜,以前从未安装过sql server,所以可能在设置过程中我应该做些什么,或者我在R代码中写了一些错误的东西
我的第一个想法是我没有安装所需的驱动程序。我尝试在我的计算机中搜索“odbc”,发现了一个名为“odbc数据源管理员(32位)”的东西。我点击了“驱动程序”选项卡,它在“系统上安装的ODBC驱动程序”列表中显示了“SQL Server”,所以驱动程序可能就在那里
不知道如何从这里开始
我尝试了带有或不带“uid=DESKTOP-4M7G7RU/mogwa”的R代码,但我没有连接到SQL Server的密码,因此没有必要在R代码中使用该密码。在一行中使用字符串进行尝试(可信连接意味着不需要uid)-odbc控制面板有两个版本,一个用于32位,一个用于64位-位必须匹配所有位置-请注意,management studio不会安装SQL Express,因此请确保已安装。好的,请在同一行中尝试使用字符串,但无效。我可以看到32位和64位驱动程序。我按照这个指南使用dns设置它们:我用我创建的dns名称尝试了这个,但没有成功。显然找不到数据源名称。theodbcDriverConnect(“mydnsname”,uid=“myuserid”)我只是不明白为什么在运行我发布的原始代码时,它说没有提供默认驱动程序。“driver={sqlserver}”似乎是我应该用于该参数的,我可以在我的计算机上看到该驱动程序。我还能在这里做什么!萝莉终于明白为什么它不起作用了。对于受信任的\u连接,我使用的是值“true”而不是“yes”。我不熟悉使用sql,现在我明白它不像大多数语言那样具有布尔真/假值。我不完全确定我是否看到了一个带有true的例子,或者我是否在脑海中将它转换为true,因为我已经习惯于在这些情况下编写true。当我偶然发现这个网站时,我才意识到我的错误:在一行中使用字符串all(可信连接意味着不需要uid)-odbc控制面板有两个版本,一个用于32位,一个用于64位-位必须匹配所有位置-请注意,management studio不会安装SQL Express,因此请确保已安装。好的,请在同一行中尝试使用字符串,但无效。我可以看到32位和64位驱动程序。我按照这个指南使用dns设置它们:我用我创建的dns名称尝试了这个,但没有成功。显然找不到数据源名称。theodbcDriverConnect(“mydnsname”,uid=“myuserid”)我只是不明白为什么在运行我发布的原始代码时,它说没有提供默认驱动程序。“driver={sqlserver}”似乎是我应该用于该参数的,我可以在我的计算机上看到该驱动程序。我还能在这里做什么!萝莉终于明白为什么它不起作用了。对于受信任的\u连接,我使用的是值“true”而不是“yes”。我不熟悉使用sql,现在我明白它不像大多数语言那样具有布尔真/假值。我不完全确定我是否看到了一个带有true的例子,或者我是否在脑海中将它转换为true,因为我已经习惯于在这些情况下编写true。当我偶然发现这个网站时,我才意识到我的错误:
Warning messages:
1: In odbcDriverConnect("driver = {SQL Server};\n server = DESKTOP-4M7G7RU\\SQLEXPRESS;\n database = master;\n trusted_connection = true;\n uid = DESKTOP-4M7G7RU/mogwa") :
[RODBC] ERROR: state IM002, code 0, message [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
2: In odbcDriverConnect("driver = {SQL Server};\n server = DESKTOP-4M7G7RU\\SQLEXPRESS;\n database = master;\n trusted_connection = true;\n uid = DESKTOP-4M7G7RU/mogwa") :
ODBC connection failed