【问题标题】:'Could not allocate memory' when inserting to a memo field in an MS-Access database with RODBC使用 RODBC 插入 MS-Access 数据库中的备注字段时“无法分配内存”
【发布时间】:2014-09-21 11:17:27
【问题描述】:

我正在尝试使用 RODBC 中的 sqlSave 函数向 Microsoft Access 数据库中包含备注字段的表中插入新行,但出现以下错误:

Calloc' 无法分配内存 (1073741824 of 1 bytes) odbcUpdate channel query mydata coldata[m, ] test verbose nastring

通过设置verbose = TRUE,我在错误之前得到的最后一行是:

Binding: 'notes' DataType -1, ColSize 1073741823

它似乎正在获取备忘录字段的最大大小,似乎是 1GB,然后尝试分配那么多内存。如果我在 Access 中将字段类型更改为“文本”,则插入工作正常而无需更改我的代码。有什么方法可以避免这种行为,或者有什么替代方法可以在一个字段中存储超过 255 个字符的文本?

【问题讨论】:

标签: sql r ms-access rodbc


【解决方案1】:

ODBC 连接本身有一个缓冲区大小,默认为 2048。您可能希望为这个数据集扩展它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    • 2020-05-08
    • 2017-02-27
    • 1970-01-01
    • 2017-06-12
    • 1970-01-01
    相关资源
    最近更新 更多