这修复了自第一个 GA 版本 1.0.5 以来的错误并引入了新功能。
-
不兼容的更改: API 不兼容的更改:
ConnectPropertyVal不再struct由使用boost::variant. 代码如:sql::ConnectPropertyVal tmp; tmp.str.val=passwd.c_str(); tmp.str.len=passwd.length(); connection_properties["password"] = tmp;应该改为:
connection_properties["password"] = sql::ConnectPropertyVal(passwd); 的实例
std::auto_ptr已更改为boost::scoped_ptr。作用域数组实例现在使用 boost::scoped_array。此外,boost::shared_ptr现在boost::weak_ptr用于保护对结果集的访问。LDFLAGS,CXXFLAGS现在CPPFLAGS从环境中检查每个生成的二进制文件。连接映射属性
OPT_RECONNECT已更改为类型booleanfromlonglong。get_driver_instance()现在仅在动态库构建中可用;静态构建没有这个符号。这样做是为了适应用LoadLibrary或加载 DLLdlopen。如果您不使用CMake构建源代码,则需要定义mysqlcppconn_EXPORTS您是否正在动态加载并希望使用get_driver_instance()入口点。Connection::getClientOption(const sql::SQLString & optionName, void * optionValue)现在接受optionName值metadataUseInfoSchema、defaultStatementResultType、defaultPreparedStatementResultType和characterSetResults。在以前的版本中只metadataUseInfoSchema允许。相同的选项可用于Connection::setClientOption().
某些头文件错误地出现在源代码分发中。该修复从使用 CPack 生成的源包中排除了动态生成的和平台特定的头文件。(漏洞 #45846)
如果配置源外构建,即当未从源根目录调用CMake时, CMake会生成错误。(漏洞 #45843)
使用准备好的语句会导致堆损坏。(漏洞 #45048)
使用 GCC 4.4 时缺少包含。请注意,GCC 4.4 尚未用于任何官方连接器/C++ 构建。(漏洞 #44931)
准备好的语句中的错误已修复。当在没有任何参数的情况下准备存储过程时,就会出现该错误。这导致了异常。(漏洞 #44931)
修复了准备好的语句性能问题。读取大型结果集很慢。
修复了
ResultSetMetaDatafor statements 和 prepared statements 中的错误,getScale并getPrecision返回了错误的结果。