【发布时间】:2013-02-21 01:29:45
【问题描述】:
我正在使用 VBscript、ADO 和 SQLite ODBC 驱动程序来存储和检索大字符串 (~5KB)。存储它们可以正常工作,可能是因为我可以在绑定插入语句的参数时指定大小。但是,当我尝试检索这些字符串时,我正确地获得了前 256 个(或 255 个)字符,但其余的接缝来自随机内存区域。我做错了什么(除了使用 VBscript 和 ADO...)?
我对将文本存储为二进制数据的想法持开放态度。但是我尝试过的功能(稍后检索它)不起作用。
【问题讨论】:
-
ADO 有一个 GetChunk 方法。 support.microsoft.com/kb/180368
-
我已经尝试过了,但是...“此方法不适用于 Record 对象的 Field 对象。” (w3schools.com/ado/met_field_getchunk.asp)
-
看看这里有没有什么对你有帮助的:motobit.com/tips/detpg_binarytostring
-
我也在看那个。但由于存储或二进制/字符串不是问题,也许我真正的问题是“如何在执行 SELECT 后控制记录集中的结构和类型”
-
我可能会放弃:“使用 ODBC 游标库,不可能对从存储过程返回的记录集使用 GetChunk 或 AppendChunk 方法。这是因为通常不会检索 BLOB 数据其余数据以节省带宽。当存储过程创建记录集时,游标驱动程序无法确定事后如何查询 BLOB 数据,因为它无法确定要使用的基表或关键字段。服务器-侧游标缓解了这个问题,但将您限制为每个存储过程的单个语句..." (support.microsoft.com/kb/194975)