我正在尝试使用 sqlSave
在包含备注字段的 Microsoft Access 数据库中的表中插入新行RODBC 中的函数,我收到以下错误:
Calloc' could not allocate memory (1073741824 of 1 bytes) odbcUpdate channel query mydata coldata[m, ] test verbose nastring
通过设置
verbose = TRUE
,我在错误之前得到的最后一行是:Binding: 'notes' DataType -1, ColSize 1073741823
它似乎获得了备忘录字段的最大大小,似乎是 1GB,然后尝试分配那么多内存。如果我在 Access 中将字段类型更改为“文本”,则插入可以正常工作而无需更改我的代码。有什么办法可以避免这种行为,或者有什么替代方法可以在一个字段中存储超过 255 个字符的文本?
最佳答案
ODBC 连接本身有一个缓冲区大小,默认情况下它是 2048。您可能希望为这个数据集扩展它。
关于sql - 使用 RODBC 插入到 MS-Access 数据库中的备注字段时“无法分配内存”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25026243/