SQL 使用 RODBC 连接的服务器查询失败,在 SQL 服务器中有效

SQL Server query failed with RODBC connection, works in SQL Server

您好,提前致谢。

我正在使用 R 包 RODBC 连接到 SQL 服务器数据库和 运行 查询以删除 table 中的数据。当我 运行 其他查询如 SELECT 语句等时...查询 运行 很好或者至少我得到了一个详细的错误。下面的查询只是失败了

bulk <- odbcConnect(dsn="DSN", uid = "UID", pwd = "PWD",case="nochange", colQuote=c(), tabQuote=c() )

prodnum <- 9803

  sqlQuery(bulk,
           paste("DELETE FROM [schema].[table] WHERE date = (SELECT DATEADD(day, DATEDIFF(day, 0, GETDATE()), 0)) AND ID IN ('"
                  ,prodnum
                  ,"')"
                  , sep=""), believeNRows=FALSE)

我已经要求其他人使用我的凭据通过 SQL 服务器 运行 进行查询,这对他们来说似乎工作正常。 R 只是 returns 这个错误:

[1] "[RODBC] ERROR: Could not SQLExecDirect 'DELETE FROM [schema].[table] WHERE date = (SELECT DATEADD(day, DATEDIFF(day, 0, GETDATE()), 0)) AND ID IN ('9803)'"

事实证明,如果 table 中没有数据,则该错误将 return。我将一些数据插入 table 然后尝试 运行 之后的删除查询。 100% 的时间都在工作。