如何在结果集中的BLOB字段中获取数据大小? (使用C ++和MySQL Connector C ++)
为了从结果集中读取数据,我先为它分配内存。为了分配内存,我需要知道结果集中blob数据的大小。
搜索网络和StackOverflow,我找到了两种方法:OCTECT
和BLOB流。
找到BLOB大小的一种方法是使用OCTECT()
函数,这需要一个新的查询并生成一个新的结果集。我宁愿不使用这种方法。
另一种方法是使用blob流并搜索到最后,并获取文件位置。但是,我不知道是否可以将流重绕到开头以便读取数据。此方法需要额外读取整个流。
MySQL Connector C ++ 1.0.5 的ResultSet
和ResultSetMetaData
接口不提供获取字段(列)中数据大小的方法。< / p>
在给定结果集和字段名称的情况下,是否存在获取BLOB字段中数据大小的过程?
我正在使用MySQL Connector C ++ 1.0.5,C ++,Visual Studio 2008,Windows Vista / XP和“Server version:5.1.41-community MySQL Community Server(GPL)”。
答案 0 :(得分:3)