-
SQLGetInfo()
为了与最新的 MySQL 5.6 语法兼容, 以下保留字已添加到 ODBC 函数返回的列表中:GET
IO_AFTER_GTIDS
IO_BEFORE_GTIDS
MASTER_BIND
ONE_SHOT
PARTITION
SQL_AFTER_GTIDS
SQL_BEFORE_GTIDS
-
新的连接选项
can_handle_exp_pwd
表明您的应用程序包含错误处理逻辑来处理过期密码的错误代码。有关此连接选项的详细信息以及关联的 SQL 状态和本机错误代码,请参阅 连接器/ODBC 连接参数 。有关 MySQL 服务器帐户密码过期的详细信息,请参阅ALTER USER 语句 。这个新选项通过详细信息对话框 的连接选项卡 上的 复选框 可以处理过期密码添加到 Windows GUI。
函数返回的字符串
SQLNativeSql
没有像它应该的那样以 null 结尾。(漏洞 #14559721)为连接字符串中的选项指定某些值
CHARSET
可能会在执行查询时导致严重错误。(漏洞 #14363601)如果使用相同的语句句柄调用多个语句,则
SQLColumns
其他目录函数可能会返回错误的结果。某些字段长度值未在描述符记录中重置。即使在语句SQL_CLOSE
之间关闭了语句句柄,也会出现此问题。(漏洞 #14338051)如果一个应用程序收到一个
SIGPIPE
信号,然后SIGPIPE
紧接着(在第一个信号处理程序完成之前)收到另一个信号,应用程序可能会终止而不是处理第二个信号。(漏洞 #14303803)-
String data, right truncated
当仅请求部分信息时, 多个目录或信息函数可能会引发不正确的错误 。例如,如果应用程序called SQLDescribeCol(hstmt, ColNumber, ColName, BufferLen, ....)
,但不想要列名(ColName == NULL
和BufferLen == 0
)。SQL_SUCCESS_WITH_INFO
也可以返回而不是正确的值SQL_SUCCESS
。此问题影响了许多 ADO、DAO 和其他应用程序。受影响的功能包括:
Spurious error and incorrect return code: SQLDescribeCol SQLDescribeColA SQLDescribeColW SQLGetInfoA SQLGetInfoW Incorrect return code: SQLColAttribute SQLColAttributeW SQLGetConnectAttr SQLGetConnectAttrW SQLGetCursorName SQLGetCursorNameW SQLGetInfo SQLGetInfoW SQLNativeSql SQLNativeSqlW
(漏洞 #14285620)
SQLTables
使用非常长的数据库或表名称 调用函数可能会导致严重错误。此修复允许SQLTables
函数接受最大长度为 64 个字符的数据库和表名称。(漏洞 #14085211)符号
SQLInstallDriverEx
、SQLInstallDriverExW
和SQLRemoveDriverW
被导出,导致与一些商业 ODBC 包(如 DataDirect ODBC)不兼容,并使连接器/ODBC 依赖于unixODBC
库libodbcinst.so.1
。此问题首先在连接器/ODBC 5.1.8 中发现。(缺陷 #11766724,缺陷 #59900)在 64 位系统上,
SQLBindCol
使用指示符变量(通过最后一个参数)调用函数可能会返回不正确的结果。(缺陷 #11766437,缺陷 #59541)当从具有二进制排序规则的表中检索类型为
TINYTEXT
,TEXT
,MEDIUMTEXT
或 的列时LONGTEXT
,文本字段将转换为十六进制表示形式,即使这些值并不是真正的 BLOB。不必要的转换可能会扩展数据,从而在存储结果值时导致溢出问题。(错误#11746572,错误#27282)