【发布时间】:2022-10-01 09:09:19
【问题描述】:
我正在尝试使用 odbc::dbWriteTable() 函数将 R 中数据帧中的记录附加到已建立的 SQL 数据表中。这是我用于许多工作流的功能,用于将记录附加到各种数据库表。
具体来说:odbc::dbWriteTable(connection, DBI::SQL(glue(\"{database}.{schema}.{table}\")), value = dataframe, append = TRUE)
数据框和目标 SQL 表共享相同的列名和变量类型。
但是,当我尝试运行该函数并附加数据记录时,我收到以下错误:
result_insert_dataframe(rs@ptr, values, batch_rows) 中的错误: nanodbc/nanodbc.cpp:####: ######: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]列名“row_names”无效。 [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]无法准备语句。
数据框不包含行名。为什么会生成列名“row_names”,有没有办法确保不生成此列名?非常感谢您的任何建议!
标签: sql-server odbc