MySQL 连接器/C++ 发行说明  / MySQL 连接器/C++ 1.0 中的更改  /  MySQL Connector/NET 1.0.9 (2007-02-02) 的变化

MySQL Connector/NET 1.0.9 (2007-02-02) 的变化

添加或更改的功能

  • 连接器不再使用 ICSharpCode ZipLib,也不再随它分发。

  • 重要更改:此版本不再提供 .NET 1.0 的二进制文件。如果您需要对 .NET 1.0 的支持,则必须从源代码构建。

  • 改进CommandBuilder.DeriveParameters为在查询存储过程元数据之前先尝试使用过程缓存。使用创建的返回参数 DeriveParameters现在具有名称 RETURN_VALUE

  • 一个Ignore Prepare选项已添加到连接字符串选项。如果启用,准备好的语句将在整个应用程序范围内禁用。此选项的默认值为 true。

  • 实现了存储过程缓存。默认情况下,连接器缓存最近看到的 25 个过程的元数据。您可以使用procedure cache连接字符串更改缓存的过程数。

  • 重要变化:由于使用服务器端准备好的语句存在一些问题,MySQL Connector/NET 5.0.2 默认禁用它们。禁用服务器端准备好的语句不会以任何方式影响连接器的操作。

    要启用服务器端准备好的语句,您必须将以下配置属性添加到连接器字符串属性中:

    ignore prepare=false

    此属性的默认值为 true。

修正错误

  • 带有负值的时间将被错误地返回。(漏洞 #25912)

  • MySqlConnection连接到 MySQL v4.1.7 时抛出 NullReferenceExceptionand 。ArgumentNullException(漏洞 #25726)

  • SELECTWHERE使用包含 UTF-8 字符串的子句时无法正常工作。(漏洞 #25651)

  • 关闭然后重新打开与数据库的连接时,字符集规范会丢失。(漏洞 #25614)

  • 尝试通过存储过程填充表架构会触发运行时错误。(漏洞 #25609)

  • ExecuteScalar()与多个查询一起 使用,其中一个查询失败,将挂起连接。(漏洞 #25443)

  • 添加到错误消息的附加文本。(漏洞 #25178)

  • 将参数对象添加到命令对象时,如果参数方向设置为ReturnValue 在参数添加到命令对象之前,则在执行命令时会抛出错误。(漏洞 #25013)

  • 连接到服务器时,即使主机名不正确,连接的返回码也可能为零。(漏洞 #24802)

  • 使用Driver.IsTooOld()会返回错误的值。(漏洞 #24661)

  • 当使用 aDbNull.Value作为参数值的值,然后设置特定的值类型时,命令失败并出现异常,因为DbNull.Value. (漏洞 #24565)

  • 存储过程执行不是线程安全的。(漏洞 #23905)

  • CommandBuilder会错误地为启用了自动递增的表列添加插入参数。(漏洞 #23862)

  • 一个启用了 IPv6 的系统,MySQL Connector/NET 会错误地解析主机名。(漏洞 #23758)

  • System.OverflowException访问超过 255 字节的 varchar 字段时会引发 an 。(漏洞 #23749)

  • 嵌套事务不会引发错误或警告。(漏洞 #22400)

  • 在 Mono 中,使用PreparedStatement 接口可能会由于 BitArray复制错误而导致错误。(漏洞 #18186)