Documentation Home
MySQL 连接器/ODBC 发行说明  / MySQL 连接器/ODBC 版本 8.0 中的更改  /  MySQL Connector/NET 8.0.29 的变化(2022-04-26,全面上市)

MySQL Connector/NET 8.0.29 的变化(2022-04-26,全面上市)

X DevAPI 注释

  • 使用 TableInsertStatement对象插入包含特殊字符 ( - / \ % & =) 的字符串值时引发异常。(错误#100314,错误#31692694)

添加或更改的功能

  • 以前,应用程序可以设置 SslMode=none连接选项以建立到非 TLS/SSL 启用服务器的经典 MySQL 协议或 X 协议连接。但是,如果应用程序试图建立未加密的连接并提交了与 TLS/SSL 相关的连接选项,Connector/NET 会确定选项组合不兼容并引发错误。不兼容的选项SslMode=none 有:CertificateFile (Certificate File), CertificatePassword ( Certificate Password), SslCa( Ssl-Ca), SslCert( Ssl-Cert), SslKey( Ssl-Key), 和 tlsversion( tls-version, tls version)。

    为了减少连接错误的数量并增强连接体验,Connector/NET 现在对连接进行了以下更改:

    • connection-option 值已SslMode=none弃用(标记为过时)并替换为 SslMode=disabledconnection-option 值。

    • 与其他 TLS/SSL 连接选项结合使用时都SslMode=none不会 SslMode=disabled引发错误。

    • 现在删除了在同一连接字符串(或 ConnectionString属性)中提交重复的 TLS/SSL 连接选项的限制。目前,.NET Framework 限制MySqlSslMode 在 X 协议连接的传统连接字符串中使用重复值。

  • Connector/NET 现在支持基于快速身份在线 (FIDO) 标准的身份验证方法。这种新的身份验证方法允许 MySQL 用户通过与本地设备交互来建立与服务器的连接,而不是通过提供密码(请参阅 连接器/NET 身份验证)。

修正错误

  • 对于试图检索列值的调用,该MySqlDataReader.GetFieldValue<T> 方法返回异常BINARY。(错误#33781449,错误#106244)

  • 在 Connector/NET 8.0.28 版本中MySqlConnection.Open,调用失败时 返回的异常类型 从 更改MySqlException为 。AggregateException此修复将异常恢复为原始类型 ( MySqlException)。(错误#33781445,错误#106242)

  • 调用对象的GetSchema("Procedure Parameters")方法时 MySqlConnection,返回的表包含列名,但没有任何代表集合的行。(错误#33674814,错误#105181)

  • 将日期时间 LINQ 表达式与数据库日期字段进行比较时,Connector/NET 返回无效操作异常,因为应用程序使用 EF Core 进行筛选所需的类不可用。(错误#32965150,错误#103436)

  • 如果SELECT语句使用新行或制表符进行格式化,则相关字符 (\n\t) 在查询分析期间将被忽略,并且 Connector/NET 会返回语法错误。(缺陷 #21971751,缺陷 #78760)

  • 当表与类一起使用以生成单表命令时,不支持 具有一列或多列类型为无符号 BIGINT(无符号 64 位整数) 的主键。MySqlCommandBuilder(错误#105768,错误#33650097)

  • 尽管该MySqlCommand.Clone方法返回了当前命令的副本,但 MySqlCommand.Attributes集合(MySqlAttributeCollection对象)的内容并未复制到克隆的命令中。(错误#105730,错误#33613687)