MySQL 连接器/ODBC 发行说明  / MySQL 连接器/ODBC 版本 5.3 中的更改  /  MySQL Connector/ODBC 5.3.2 的变化(2014-04-08,全面上市)

MySQL Connector/ODBC 5.3.2 的变化(2014-04-08,全面上市)

这是连接器/ODBC 5.3.x 系列的第一个 GA 版本。可用的下载包括基于相同现代代码库的 Unicode 驱动程序和 ANSI 驱动程序。请根据您的应用程序类型选择您需要的驱动程序类型——Unicode 或 ANSI。默认情况下启用服务器端准备好的语句。它适用于 4.1 以后的任何 MySQL 版本(不适用于 4.0 或更早版本。)

这是符合 ODBC 3.8 规范的 MySQL ODBC 驱动程序的第三个版本。它包含具有关键 ODBC 3.8 功能的标准的最低要求实现,其中包括作为 ODBC 3.8 驱动程序的自我标识、输出参数流(仅支持二进制类型)以及 SQL_ATTR_RESET_CONNECTION 连接属性的支持(对于 Unicode 驱动程序)只要)。

Connector/ODBC 5.3 还引入了一个基于 GTK+ 的设置库,在一些基于 Unix 的系统上提供了 GUI DSN 设置对话框。该库目前包含在 Oracle Linux 6 和 Debian 6 二进制包中。5.3 系列中的其他新功能包括文件 DSN 和书签支持。

添加或更改的功能

  • 实现了对 ODBCINSTGetPropertiesunixODBC GUI 对话框使用的接口的支持。这允许用户在类 Unix 平台上通过图形用户界面配置文件 DSN。(漏洞 #17513175)

  • 添加了对连接标志的支持 DFLT_BIGINT_BIND_STR

  • 使 Linux 上的连接器/ODBC GUI 符合 支持辅助功能的 GNOME 编码指南

修正错误

  • 当空指针作为这些函数的句柄传递时, 函数SQLSetDescField()SQLGetDiagField()和 崩溃了。SQLGetDiagRec()此修复使函数在使用之前检查传递的指针是否为空。(漏洞#18431088)

  • SQLBulkOperations(SQL_FETCH_BOOKMARK) 在或 之后调用时 返回SQL_NO_DATA错误 。(漏洞#18287216)SQLBulkOperations(SQL_UPDATE_BY_BOOKMARK)SQLBulkOperations(SQL_DELETE_BY_BOOKMARK)

  • 在连接器/ODBC 的 Windows GUI 中选择控件时,控件元素的顺序是错误的。(漏洞#18240696)

  • SQLEndTran()的并发 执行SQL_HANDLE_ENV导致了分段错误。(缺陷号 18166331)

  • 使用 NULL 参数调用SQLNumResultCols()会导致分段错误。(漏洞 #18165197)

  • 无法从内部打开连接器/ODBC 的 GUI 对话框来 ODBCManageDataSourcesQ4编辑现有的 DSN。(漏洞 #18046123)

  • myodbc-installer没有初始化分配的内存。此修复使用“ \0刷新缓冲区以 进行初始化。(漏洞 #18046120)

  • 在连接到具有无效值的服务器后尝试准备查询时,连接器/ODBC 崩溃 CHARSET。此修复程序检查 CHARSET 值并在无效时抛出错误。(漏洞 #17999659)

  • 失败时malloc(),Connector/ODBC 崩溃,因为在driver_new()函数中, is before before and driver被释放 。此修复更正了 free() 调用的顺序。(漏洞#17992912)driver->namedriver->lib

  • 当提供的路径长度超过 256 个字符或选项字符串超过 100 个字符时,驱动程序和安装程序会崩溃。此修复使连接器/ODBC 返回正确的错误。(漏洞#17966018)

  • SQLFetch()使用 unixodbc 版本 2.3.0、2.3.1 或 2.3.2 执行时崩溃。(漏洞#17857204)

  • SQLSpecialColumns()如果提供的表名太长,则会 发生分段错误 。此修复程序使连接器/ODBC 针对这种情况抛出适当的错误。(漏洞 #17854697)

  • 在 之后调用时SQLParamaDataSQLGetData返回错误。(漏洞#17842966)

  • SQLGetData从输出参数流中检索数据时未返回正确的数据长度。(错误#17814768,错误#70946)

  • 如果先前的提取未返回任何记录SQLBulkOperations, 则会 发生分段错误 。SQL_UPDATE_BY_BOOKMARK(漏洞#17714358)

  • 中发生数据损坏 SQLBulkOperations(),因为在 batch_insert()函数中, ptr_offset_adjust有时指向无效的内存位置。(漏洞#17714172)

  • 在使用 Connector/ODBC 将BULK INSERT插入表的时间列时,如果小时值大于 99,则会引发语法错误。此修复可确保在小时值大于 23 时引发正确的错误。(漏洞#17613161)

  • SQLDescribeCol()在没有结果集的情况下调用时返回内存分配失败错误。此修复可确保返回正确的错误。(漏洞 #17588101)

  • 如果给定的目录名称 SQLSetConnectAttr()太长,则调用 SQLConnect()SQLDriverConnect()使连接崩溃,并且调用SQLGetConnectAttr()为目录名称返回 null。(漏洞 #17587913)

  • SQLExecute()当连接被另一个线程终止时 发生内存泄漏。(漏洞#17587617)

  • 连接器/ODBC 的 DMG 安装程序在 OS X 10.8 和 10.9 上失败。此修复更正了导致安装问题的驱动器类型错误标识。(错误#17512040,错误#70422)

  • 中发生内存泄漏SQLSetStmtAttr()。(漏洞 #17441507)

  • SQLColumns()的表名参数超过 256 个字符或其列名参数超过 129 个字符时发生分段错误。此修复使 Connector/ODBC 在这些情况下抛出正确的错误。(漏洞#17358838)

  • SQLDescribeCol()如果使用的列号大于结果集中的列数,则 发生断言失败 。(漏洞 #17311065)

  • SQLProcedureColumns()当不存在满足选择条件的函数或过程列时, 发生内存泄漏 。(漏洞 #17298721)

  • myodbc_casecmp()当提供的查询为空时 发生分段错误 。(漏洞 #17085344)

  • 在 Microsoft Access 中使用连接器/ODBC 时,对数据视图中的列进行排序可能会使程序崩溃。(漏洞 #17071780,漏洞 #69550)

  • 使用连接选项 时,在函数返回错误结果后 FLAG_NO_INFORMATION_SCHEMA调用函数。(漏洞 #16920750)SQLFetchSQLForeignKeys

  • 在 x86_64 以外的某些 64 位系统(例如 ppc64)上构建 Connector/ODBC 时,CMake无法识别它是 64 位系统,并错误地使用 lib而不是lib64 目录名来安装动态库。此修复程序采用两步法,使 CMake 通过读取 的值 以及检查文件夹CMAKE_SIZEOF_VOID_P的存在来检查系统架构。/usr/lib64(漏洞 #16785424)

  • 如果设置了连接选项,该功能SQLForeignKeys()将不起作用NO_I_S。(缺陷 #13712420,缺陷 #64307)

  • GtkComboBox为和 的控件问题实施了解决方法 GtkComboBoxEntry,其中对话框控件拦截了键盘信号,以便可以使用键盘将焦点设置到其他控件。