MySQL 连接器/ODBC 发行说明  / MySQL 连接器/ODBC 版本 5.2 中的更改  /  MySQL 连接器/NET 5.2.6 (2009-04-28) 的变化

MySQL 连接器/NET 5.2.6 (2009-04-28) 的变化

添加或更改的功能

  • 添加了一个新的连接字符串选项:use affected rows。当true连接将报告更改的行而不是找到的行时。(漏洞 #44194)

修正错误

  • GetSchema()在 索引或列名受限的地方 调用Indexes或失败。IndexColumns

    SchemaProvider.cs, 方法中 GetIndexes()并将 GetIndexColumns()它们的限制直接传递给GetTables(). 只有当限制不比 schemaNameand更具体时,这才有效tableName。如果IndexName给出,则将其传递到 GetTables()将其视为 TableType. 因此,没有返回任何表,除非索引名称恰好是BASE TABLEor VIEW。这意味着这两种方法都无法返回任何行。(漏洞 #43991)

  • GetSchema("MetaDataCollections")应该返回一个表,其中包含名为 NumberOfRestrictions而不是 NumberOfRestriction的列。

    这可以通过参考 Microsoft 文档来确认。(漏洞 #43990)

  • 发送到 MySQL 连接器/NET 角色提供程序以从角色中删除用户的请求失败。查询日志显示查询在立即回滚的事务中正确执行。回滚是由于缺少 Complete对事务方法的调用引起的。(漏洞 #43553)

  • 使用MySqlBulkLoader.Load()时,文本文件由打开 NativeDriver.SendFileToServer。如果它在将文件作为流打开时遇到问题,则会生成并捕获异常。finally{}然后在子句中通过调用 尝试清理资源fs.Close(),但由于流从未成功打开,因此这是尝试执行空引用的方法。(漏洞 #43332)

  • MySqlConnection.ClearPool(connection)调用 时产生空引用异常 。(漏洞 #42801)

  • MySQLMembershipProvider.ValidateUser仅用于userId验证。但是,它还应该使用applicationId来正确执行验证。

    生成的查询是,例如:

    SELECT Password, PasswordKey, PasswordFormat, IsApproved, Islockedout
          FROM my_aspnet_Membership WHERE userId=13

    注意applicationId没有使用。(漏洞 #42574)

  • ProfileProvider 函数中的类 有错误private ProfileInfoCollection GetProfiles()。最终表的列被命名为lastUpdatdDate(缺少“e”)而不是正确的lastUpdatedDate。(漏洞 #41654)

  • GetGuid()方法 MySqlDataReader没有将 BINARY(16)列数据视为 GUID。对此类列进行操作时FormatException 会生成异常。(漏洞 #41452)

  • 当 ASP.NET 成员资格被配置为不需要使用密码问题和答案 时,使用重置用户密码时会生成requiresQuestionAndAnswer="false"一个 。(漏洞 #41408)SqlNullValueExceptionMembershipUser.ResetPassword()

  • 如果 aStored Procedure在其参数列表中包含空格,然后从 MySQL Connector/NET 调用,则会生成异常。但是,Stored Procedure从 MySQL 查询分析器或 MySQL 客户端调用的相同方法工作正常。

    生成的异常是:

    Parameter '0' not found in the collection.

    (漏洞 #41034)

  • DATETIME格式包含错误的空格 。(漏洞 #41021)

  • 配置时MySql.Web.Profile.MySQLProfileProvider ,无法分配默认名称以外的名称MySQLProfileProvider

    如果SCC_MySQLProfileProvider已分配名称,则在尝试使用 时会生成异常 Page.Context.Profile['custom prop']

    生成的异常是:

    The profile default provider was not found.

    请注意,异常说明:“配置文件 默认提供程序...”,即使明确请求了不同的名称。(漏洞 #40871)

  • ExecuteNonQuery使用命令类型调用时,Stored Procedure它对一个用户有效,但导致具有相同数据库权限的另一个用户挂起。

    但是,如果CALL在命令文本ExecuteNonQuery中使用并且与命令类型一起使用Text,则该调用对两个用户都有效。(缺陷号 40139)