无法使用 R 中的 sqlSave 附加到 SQL Server 表

2023-11-24

我正在尝试使用 R 中 RODBC 包的 sqlSave 函数更新 SQL 表。 数据存在于数据框中。 当我尝试运行命令时:

sqlSave(DBConn, dat=df, verbose=T, tablename='table', append=T)

我收到以下错误:

Query: INSERT INTO "table" ( "col1", "col2", "col3", "col4" ) VALUES ( ?,?,?,?,? )
sqlwrite returned
42000 -131 [Sybase][ODBC Driver][Sybase IQ]Syntax error near 'table' on line 1
[RODBC] ERROR: Could not SQLPrepare 'INSERT INTO "table" ( "col1", "col2", "col3", "col4" ) VALUES ( ?,?,?,?,? )'

我在这里做错了什么,导致我无法获取 SQLQuery 中的值?

感谢您提前提供的任何帮助

EDIT 1在@Gordon 评论之后:

错误显示 5 个占位符,但我的 data.frame 只有 4 列。我执行了 dim(df) 并得到了 4。它与 df 的行索引有某种关系吗?

EDIT 2

在执行以下操作时:

sqlSave(DBConn, dat=df, verbose=T, tablename='table', append=T)

现在我得到的错误仍然是相同的,有 4 个占位符,但所有值仍然是(?,?,?,?)

EDIT 3

我也尝试使用 sqlUpdate

sqlUpdate(DBConn, dat=df, verbose=T, tablename='table')

我现在得到的错误是:

Query: UPDATE "table" SET "col2"=?, "col3"=?, "col4"=? WHERE "col1"=?
Error in sqlUpdate(DBConn, t, tablename = "table", verbose = T) :
  42000 -131 [Sybase][ODBC Driver][Sybase IQ]Syntax error near 'table' on line 1[RODBC] ERROR: Could not SQLPrepare 'UPDATE "table" SET "col2"=?, "col3"=?, "col4"=? WHERE "col1"=?'

数据类型和列名可能存在问题。 所以最好获取表的数据类型和列名并将它们分配给数据框。

ColumnsOfTable       <- sqlColumns(conn, tablename)
varTypes             <- as.character(ColumnsOfTable$TYPE_NAME) 
names(varTypes)      <- as.character(ColumnsOfTable$COLUMN_NAME) 
colnames(dataObject) <- as.character(ColumnsOfTable$COLUMN_NAME)

sqlSave(conn, dataObject, tableNames, fast=TRUE,append=TRUE,  rownames=FALSE, varTypes=varTypes )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 R 中的 sqlSave 附加到 SQL Server 表 的相关文章

  • 将 SQL 数据中的一行映射到 Java 对象

    我有一个 Java 类 其实例字段 以及匹配的 setter 方法 与 SQL 数据库表的列名相匹配 我想优雅地从表中获取一行 到 ResultSet 中 并将其映射到此类的实例 例如 我有一个 Student 类 其中包含实例字段 FNA
  • 将绘图调用拆分为多个块

    我正在编写一个图的解释 其中我基本上将在第一个块中创建图 然后描述该输出 并在第二个块中添加一个轴 然而 似乎每个块都会强制一个新的绘图环境 因此当我们尝试使用以下命令运行块时会出现错误axis独自的 观察 output html docu
  • 如何在Oracle中使用Timestamp_to_scn和Scn_to_timestamp?

    我的查询结果是这样的 select cast to date a start time mm dd yyyy hh mi ss pm as timestamp date of call ora rowscn from calling tab
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • 如何将可视选择的文本通过管道传输到 UNIX 命令并将输出附加到 Vim 中的当前缓冲区

    使用 Vim 我尝试将在可视模式下选择的文本通过管道传输到 UNIX 命令 并将输出附加到当前文件的末尾 例如 假设我们有一个 SQL 命令 例如 SELECT FROM mytable 我想做如下的事情
  • 从命令行运行 R 代码 (Windows)

    我在名为 analysis r 的文件中有一些 R 代码 我希望能够从命令行 CMD 运行该文件中的代码 而无需通过 R 终端 并且我还希望能够传递参数并在我的代码中使用这些参数 例如就像下面的伪代码 C gt execute r scri
  • 在 R 格子包中微调点图

    我正在尝试为不同的数据集和不同的算法绘制一堆 ROC 区域 我有三个变量 方案 指定所使用的算法 数据集 是正在测试算法的数据集 以及 Area under ROC 我正在 R 中使用lattice库 命令如下 点图 方案 Area und
  • Kerberos 双跳

    我们遇到了臭名昭著的 Kerberos 双跳问题 这是一个全新的域 是从以前使用模拟和委派的另一个提供商迁移而来的 我们已将操作系统升级到最新的 SQL 服务器 2017 WPF 应用程序 使用域凭据 gt Web 服务 IIS 10 上的
  • 使用 R 选择第一个非 NA 值

    df lt data frame ID c 1 1 1 2 3 3 3 test c NA 5 5 6 4 NA 7 3 NA 10 9 我想创建一个名为 value 的变量 它是每个单独 ID 测试的第一个非 NA 值 对于只有NA的个体
  • 插入触发器最终在分区表中插入重复行

    我有一个分区表 我认为 适当的INSERT触发器和一些限制 不知何故 INSERT语句为每个语句插入 2 行INSERT 一个用于父分区 一个用于相应的分区 设置简要如下 CREATE TABLE foo id SERIAL NOT NUL
  • 存储过程和权限 - EXECUTE 就足够了吗?

    我有一个 SQL Server 2008 数据库 其中对基础表的所有访问都是通过存储过程完成的 一些存储过程只是从表中选择记录 而其他存储过程则进行 UPDATE INSERT 和 DELETE 如果存储过程更新表 执行存储过程的用户是否也
  • ggplot2 geom_密度和geom_histogram在一个图中

    如何制作一个所有条形加起来为 1 的直方图 并在适合的上方添加一个密度层 set seed 1234 df lt data frame sex factor rep c F M each 200 weight round c rnorm 2
  • 列中差异的数量

    我想检索一列每行中有多少个字母的差异 例如 如果您有一个值 test 而另一行有一个值 testing 则 test 和 testing 之间的差异为 4 个字母 该列的数据值为 4 I have reflected about it an
  • 在一个数据访问层中处理多个连接字符串

    我有一个有趣的困境 我目前有一个数据访问层 它必须与多个域一起使用 并且每个域都有多个数据库存储库 具体取决于所调用的存储过程 目前 我只需使用 SWITCH 语句来确定应用程序正在运行的计算机 并从 Web config 返回适当的连接字
  • 将数据框中重叠的范围合并到唯一的组中

    我有一个 n 行 3 的数据框 df lt data frame start c 178 400 983 1932 33653 end c 5025 5025 5535 6918 38197 group c 1 1 2 2 3 df sta
  • 基于时间窗口的不规则时间序列的优化滚动函数

    有没有办法使用 rollapply 来自zoo包或类似的东西 优化功能 rollmean rollmedian等 使用基于时间的窗口计算滚动函数 而不是基于大量观察的函数 我想要的很简单 对于不规则时间序列中的每个元素 我想计算一个具有 N
  • 相当于 min() 的 rowMeans()

    我在 R 邮件列表上多次看到这个问题 但仍然找不到满意的答案 假设我有一个矩阵m m lt matrix rnorm 10000000 ncol 10 我可以通过以下方式获得每行的平均值 system time rowMeans m use
  • MySQL 按重复项从上到下排序

    我有一个lammer问题 因为我不是mysql专业人士 我有类似的字段 id color 1 red 2 green 3 yellow 4 green 5 green 6 red 我想按重复项进行分组 最常见的重复项先进行分组 所以应该这样
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • 探查器模板可以迁移到较新版本的 SQL Profiler 吗?

    是否可以将 Profiler 模板迁移到较新版本的 SQL Server 就我而言 我想将 SQL 2008 模板带到 2012 年 我尝试过 1 直接文件复制和 2 导出 导入 在这两种情况下 旧模板都会运行 但无法修改 修改后会出现以下

随机推荐

  • 如何在成员函数上使用 std::async?

    如何对成员函数进行 std async 调用 Example class Person public void sum int i cout lt lt i lt lt endl int main int argc char argv Pe
  • 如何在 Python 中迭代 cur.fetchall()

    我正在研究 Python 3 4 中的数据库连接 我的数据库中有两列 下面的查询以显示的格式为我提供了两列中的所有数据 询问 cur execute select from filehash data cur fetchall print
  • 将巨大的(95Mb)JSON 数组分割成更小的块?

    我以 JSON 的形式从数据库中导出了一些数据 它本质上只是一个 列表 其中包含一堆 900K objects 现在尝试将其导入到我的生产服务器上 但我有一些便宜的网络服务器 他们不喜欢我在 10 分钟内吃掉他们所有的资源 如何将该文件分割
  • jquery.tweet.js 插件不起作用,如何显示推文

    我在我的网站上使用了这个插件来显示推文 但即使是插件网站也有问题 http coda co za content projects jquery twitter Code div class columns pre class code j
  • 将元素推入猫鼬数组

    我正在尝试将一个元素推送到猫鼬中的数组中 我正在通过 update 和 push 来完成此操作 但它并没有在数据库中更新它 这是我的代码 路线 js var Chooser require chooser var appRouter fun
  • 非常简单的javascript根本不起作用[重复]

    这个问题在这里已经有答案了 我的 php 静态网站 文件中的 JavaScript 不起作用 我使用了另外 3 个脚本 它们确实有效 但这个不行 情况很简单 JavaScript 是 var myFile document getEleme
  • 如何检查postgres数据库中所有角色/用户/group_role有什么权限?

    我有 postgres 数据库 我想要具有被分配的访问权限的用户列表 我尝试查找查询并查看了 psql 命令行帮助 nu 等 但我没有找到任何有用的信息 有谁知道这件事可以帮助我 Thanks 在此作为对前文的补充 通过以下方式检查用户的权
  • 删除 Pandas DataFrame.to_string 插入的列之间自动的两个空格

    我正在寻找一种解决方案来删除 关闭列之间的 2 个空格df to string自动创建 Example from pandas import DataFrame df DataFrame df df append a 12345 b 123
  • 如何使用keras保存最终模型?

    我使用 KerasClassifier 来训练分类器 代码如下 import numpy from pandas import read csv from keras models import Sequential from keras
  • 从另一个 Servlet 调用 Servlet Post

    我需要从另一个 servlet 调用 servlet POST 方法 并在 servlet 参数中传递一个 blob 这可能吗 如果可以的话该怎么办 PS 我无法使用 Apache HttpClient 您需要自己创建并发送 HTTP 请求
  • 为什么切片长度大于容量会产生运行时错误?

    制作了容量小于长度的切片 package main import fmt func main type b int var k make b 10 5 fmt Println k 8 当尝试运行时会出现以下错误 恐慌 运行时错误 makes
  • jquery 3.1.0 和 jquery-ui 自动完成不兼容,解决方法是什么?

    我在让 jQuery 3 1 0 使用 jQuery UI 的自动完成功能时遇到问题 我知道的唯一解决方法是用 jQUERY UI 安装程序预打包的版本替换 jQuery 3 1 0 不幸的是 这对我不起作用 因为 jQuery UI 安装
  • 在使用局部变量之前复制对局部变量的引用是否很重要

    探索 OpenJDK 8 中 java util LinkedList 的代码 我发现了以下代码 代码很简单 但我对将第一个节点的引用保存到第二行代码中的常量感到困惑 据我了解 这段代码将被内联为一行而不进行引用复制 我对吗 如果是这样 为
  • EF Core 中的 .Configuration.ProxyCreationEnabled 相当于什么?

    Entity Framework Core 中的 Configuration 相当于什么 接收错误如下 代码示例 List
  • 如何在SpriteKit中创建绳子?

    我想制作一根像图中所示的绳子video 开发这样的绳子的最佳方法是什么 我已经尝试过开始 我认为最好的方法是制作许多小 绳子 部件并用销接头连接它们 这真的是最好的吗 但我不知道如何开始 也许有人可以给我一些示例代码 THX 我是该视频的作
  • 如何将 CMS 添加到现有网站 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我有一个现有的 ASP NET 网站 我想轻松地向其添加 CMS 功能 该网站是房地产经纪人的房地产网站 由数据库等支持 但是有些页面如 关于我们
  • 如何增加Docker容器默认大小?

    我们创建了默认大小为 10GB 的 docker 镜像 并且已经加载了 cassandra 数据 现在数据已满 意味着没有空间 谁能告诉我如何在不丢失现有数据的情况下将 docker 容器大小从 10GB 增加到 40GB 使用 devic
  • UniVerse学习材料[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我最近接触到了 UniVerse 的专有后代 有谁知道我在哪里可以获得好的教程或温习其更受欢迎的父级的语法怪癖 我什至不知道如何获得表格列表 导航很困难 而且我没有看到任何手册页 更
  • Drupal localhost 重定向到 www.localhost.com

    我正在开发一个 drupal 站点 我将其签出 svn 到我的本地主机 现在的问题是 当我去 http www site com 一切正常 但是当我去 http localhost 工作 站点 我被重定向到 http www localho
  • 无法使用 R 中的 sqlSave 附加到 SQL Server 表

    我正在尝试使用 R 中 RODBC 包的 sqlSave 函数更新 SQL 表 数据存在于数据框中 当我尝试运行命令时 sqlSave DBConn dat df verbose T tablename table append T 我收到