问题标签 [rodbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 如何将 sqlSave 函数与 R 中的现有表一起使用
我可以使用 sqlSave 创建一个新表并将数据附加到该表,但我希望平板电脑有一些额外的列(例如,一个“ID”自动增量列 - 我在创建表和测试后手动添加这些列我可以保存到它并附加到它)。一旦我在添加这些列后尝试使用 sqlSave,我在尝试使用 sqlSave 附加更多数据时会收到错误
所以我在我的数据框中添加了一个 ID 列(因此它的列将与我的数据库表匹配)并尝试将其设置为“NULL”、NULL 和“”。我不断收到同样的错误。
有任何想法吗?
谢谢, 艾瑞克
PS 我正在将 RODBC 与 MySQL OOBC 驱动程序版本 5.1 一起使用
r - 在 Excel 中通过 RODBC 导出数据
在 R 中执行计算后,我们希望将结果导出到 Excel 文件中,以便进行一些格式化并添加图形。我犯规了以下页面
http://learnr.wordpress.com/2009/10/06/export-data-frames-to-multi-worksheet-excel-file/
报告以下代码
我在实现它时遇到了一些困难,实际上它会返回一个错误,例如:
你有什么提示吗?
r - 如何存储 sqlQuery 数据框?
我迭代了一个日期数组,用于创建 sql 查询。
日期 <- c("2010-06-29", "2010-07-09", "2010-07-22")
fn1(日期)
如何将所有内容放在一个数据框中?有人可以帮我吗?
sql - rodbc 日期过滤器
我一直在尝试通过 RODBC 设置对 MS SQL 数据库的查询。不幸的是,我无法设置适当的日期过滤器。我尝试在引号和单引号、DATE 函数、括号中输入日期,但它不想工作。
这是代码:
我通常会收到此错误消息:
在日期过滤器之后,我有几个其他过滤器由 OR 彼此分隔(从示例中排除)。
r - 与 Oracle 数据库的 RODBC 连接不起作用,崩溃 R
我有许多脚本可以通过 Windows XP 上的 ODBC 从 Oracle 10g 数据库中提取数据,这些脚本已经运行了很长时间。我最近设置了一个新的 Oracle 帐户以从同一数据库的另一个模式中提取数据,但是当我使用该帐户和不同的模式进行测试时,我得到了奇怪的结果,并且有时可以(可靠地)完全杀死 R!
我使用 odbcConnect 连接到数据库,并且尝试过相信NRows 和 rows_at_time 没有区别
然后我尝试了一些查询(尽可能简单。这个返回零行(此表中有两行),并且大多数列名都替换为 An
这有效,但返回零行并且两个日期列被截断为 L 和 L.1
这工作正常,并返回数据
这似乎杀死了R(老实说)
R死了。(在 StatEt 和 RGui 中)
所以我的问题;
a) 有谁知道出了什么问题?
b) 有谁知道我还可以采取哪些步骤来诊断?
sql-server - RODBC odbcDriverConnect() 连接错误
我正在尝试使用
连接远程数据库服务器(sql server 2008)。但我得到了
[RODBC] 错误:状态 08001,代码 17,消息 [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝。
错误。任何想法?
我可以用
连接我的本地数据库服务器(sql server 2008)。
r - 查找不起作用,因为查找变量的名称可能不同
我经常使用不是我自己创建的数据库。在数据库中,数据通常是编码的,例如男性 = 1,女性 = 2。我创建了很多动态报告,需要实际的级别名称,而不是变量级别的编码。我一直在手动重新编码变量的每个级别,但必须有一种方法以更自动化的方式完成此操作。
找出编码实际是什么的关键是在单独的表格中提供。当我通过 RODBC 将该数据导入 R 时,表格在列(例如)性别中包含 1 和 2。我试图找到一种方法,通过具有一些讨厌特征的查找表将它们转换为男性和女性。
在这种情况下,数据文件看起来像:
ID | 性别 |
---|---|
1 | 1 |
2 | 1 |
3 | 2 |
4 | 1 |
和查找表是这样的:
姓名 | 代码 | 描述 |
---|---|---|
性别 | 1 | 男性 |
性别 | 2 | 女性 |
变量X | 1 | 任何 |
变量X | 2 | 任何 |
变量X | 3 | 任何 |
因此,我想根据数据文件的变量名称和查找表中的名称列,使用两个表之间的链接将代码与 data$Gender 中找到的值进行匹配,从而在查找表中查找描述。我可以通过为每个变量运行来做到这一点:
data$Gender<-lookup(data$Gender, subset(lookuptable,Name=="Gender")) (查找是包'epicalc'中的一个函数)
'Name == "Gender"' 位的全部内容...如果变量名称和列 Name 中的字符串相同,则创建一个遍历所有变量名称的循环并不是一个大问题。但是,就我而言,名称列中的字符串名称通常与变量名称不匹配。那么当查找表是这样的时候我们该怎么办:
姓名 | 代码 | 描述 |
---|---|---|
性别 | 1 | 男性 |
性别 | 2 | 女性 |
变量X | 1 | 任何 |
变量X | 2 | 任何 |
变量X | 3 | 任何 |
在 Access 中,查找表和包含实际数据的表之间的链接是通过表设计中“查找”选项卡中的“行源”行。此行源是在变量级别指定的,因为不同的变量将需要不同的查找值(在我的情况下可以在 1 个查找表中找到)。
我想如果有一种方法可以将此 Row 源行导入到 R 中,我想我的问题将得到解决,它指定(在上面的示例中)在查找表中 Gender 实际上被称为 Sex。
如果您想知道,Row Source 行(可以为数据表中的每个变量指定)如下所示:
选择lookuptable.Code,lookuptable.Description FROM [lookuptable] WHERE (((lookuptable.Name)="Sex"));
我该如何解决我的问题?我想从 Access 中的每个表中为每个变量导入 Row Source 行会很方便(如果可能的话),但可能不是(我不知道)......
R 版本 2.15.2 (2012-10-26)
平台:i386-w64-mingw32/i386 (32-bit)
Epicalc_2.15.1.0
RODBC_1.3-6
unixodbc - unixODBC-qui-qt 安装 - 无法编译 Qt 程序
我正在尝试为 Mac OSX Mountain Lion 设置 unixODBC,以便可以使用 RODBC 访问 Excel 电子表格。
我对各种文档和网站进行了大量研究,并了解以下步骤:
- 安装 unixODBC 2.3.1
- 安装 FreeTDS 0.91(只是想要一个免费的 ODBC 驱动程序来测试)
指定要使用的 ODBC 驱动程序。我创建了一个 tds.driver.template 并成功安装在 unixODBC 中。见下文:
[FreeTDS] 描述 = v0.63 协议 v8.0 驱动程序 = /usr/local/freetds/lib/libtdsodbc.so
$ sudo odbcinst -i -d -f tds.driver.template
$ odbcinst -q -d [FreeTDS]
最后连接到特定的 DSN。但是当我尝试如下配置 unixODBC-gui-qt 时:
它给出了以下错误:
在上述安装之前,我已经安装了 autoconf、automake、libtool 和 Mac OSX 的 Qt 库 4.8.4。
第一个问题:我是否在某些时候错过了任何步骤或配置错误?
我现在正在学习 R,但花了两天时间在 Mac ia 上配置 ODBC 有点出乎我的意料。我只想使用所有来自 unixODBC 的工具,包括它的驱动程序管理器和 GUI 工具来指定 DSN。我应该使用 emacs 来编辑 odbc.ini 吗?
第二个问题:在我指定 DSN 之后,我可以使用 RODBC 访问 Excel 电子表格吗?现在,它有以下错误。而且我不确定是否需要任何步骤来配置 RODBC 以使用 unixODBC 而不是 iODBC。
非常感谢您的帮助。
mysql - R sqlSave 字符串变量循环问题
几年后,我刚刚回到 R 的领域,并且遇到了通过 sqlSave 循环传递变量的问题。我已经在 Win7 机器上启动了 RODBC 并使用 MySQL 顺利运行,但似乎无法让我的循环工作。这是我拥有的数据以及我想要完成的工作:
- 使用 pitchRX 库的 2012 年 MLB 逐场比赛数据保存为单个“值”,称为“mlb12”,具有多个表
- “mlb12”里面有七张桌子(atbat、pitch、game、player、runner、umpire、coach)
- 我想创建一个循环,该循环将为 R 中的每个表创建一个数据框,这样我就可以使用 sqlSave 将它们通过一个循环将它们插入到我的 MySQL 数据库中
- 我已经将所有这些表插入到我的 MySQL 数据库中,但是我以“长”方式进行了操作(即声明每个 DF 并为每个插入创建一个 sqlSave 语句),并且希望在两个循环中执行它们以清理代码.
- 下面是我目前必须抓取这些数据并将其插入 MySQL 数据库的代码:
library(RODBC)
我尝试编写的用于设置数据帧和简化 sqlSave 语句的循环都未能正确执行。这是我尝试过的一个示例,我认为它会起作用:
这个循环的问题是我不记得如何(或想出如何)使用 c[[i]] 增量字段来获取“b”值来为列表中的每个表创建数据框。我相当确定如果我能解决这个问题,我可以让一个循环为“sqlSave”部分工作。有没有办法用自动增量字段(或基于第二个列表的字段)做我想做的事情?
r - tnsping 解决但无法使用脚本连接
我无法从我的 R/Python 脚本连接到 Oracle 数据库。以下是代码。TNSPing 实用程序能够使用 LDAP 解析数据库。我也在粘贴 TNSPING 输出。
TNSPing 输出
R 脚本输出
Oracle 11g 驱动程序
chan <- odbcDriverConnect("driver=Oracle in OraHome112_32;DBQ=UHK00500_SECCOMPAS_APPL;UID=toolkit;PWD= ** ") 警告信息:1:在 odbcDriverConnect("driver=Oracle in OraHome112_32;DBQ=UHK00500_SECCOMPAS_APPL;UID=toolkit;PWD = ** ") : [RODBC] 错误:状态 08004,代码 12154,消息 [Oracle][ODBC][Ora]ORA-12154:TNS:无法解析指定的连接标识符 2:在 odbcDriverConnect("driver=Oracle in OraHome112_32;DBQ=UHK00500_SECCOMPAS_APPL;UID=toolkit;PWD= ** ") : ODBC 连接失败
ODBC 驱动程序输出
chan <- odbcDriverConnect("Driver={Microsoft ODBC for Oracle};Server=UHK00500_SECCOMPAS_APPL;Uid=toolkit;Pwd= ** ") 警告消息:1:在 odbcDriverConnect("Driver={Microsoft ODBC for Oracle};Server=UHK00500_SECCOMPAS_APPL ;Uid=toolkit;Pwd= * ") : [RODBC] 错误:状态 08001,代码 12154,消息 [Microsoft][Oracle 的 ODBC 驱动程序][Oracle]ORA-12154:TNS:无法解析指定的连接标识符 2:在 odbcDriverConnect("Driver={Microsoft ODBC for Oracle};Server=UHK00500_SECCOMPAS_APPL;Uid=toolkit;Pwd= ** ") : ODBC 连接失败
有人可以建议我应该在这里检查什么来纠正这个问题吗?