MySQL连接器/NET发布说明/MySQL Connector/Net 6.3中的更改/ MySQL Connector/NET 6.3.2的更改(2010-05-24,Beta)

MySQL Connector/NET 6.3.2的更改(2010-05-24,Beta)

第一个Beta版本。此版本修复了6.3.1以来的bug。

增加或更改的功能

  • 过程缓存有一个问题,如果您创建一个过程,删除它,并使用不同数量的参数重新创建它,就会生成一个异常。

    MySQL Connector/NET已经更改,因此如果使用不同数量的参数重新创建过程,它仍然可以被识别。(错误# 52562)

  • MySQL Connector/NET已更改为包括MySqlDataReader。columnname GetFieldType(字符串).此外,MySqlDataReader.GetOrdinal ()现在,如果未找到该列,则在异常中包含该列的名称。(错误# 47467)

错误修复

  • 异常发生后,内部数据读取器,MySqlCommand.Connection.Reader,没有正确关闭(它没有设置为null)。如果随后在该命令对象上执行另一个查询,则会根据该消息生成异常已经有一个与该连接相关联的打开的DataReader,必须先关闭它。(错误# 55558)

  • MySQL Connector/NET在读取一个文本包含超过32767字节的列。(错误# 54040)

  • 在MySQL Connector/NET中,MySqlConnection.Abort ()方法包含try…catch构造,用空块。这意味着此时生成的任何异常都不会被捕获。(错误# 52769)

  • 过程缓存影响了MySQL Connector/NET的性能,降低了大约65%。这是由于不必要的电话String.Format (),与调试日志相关。即使日志记录被禁用,字符串仍然被格式化,导致性能下降。(错误# 52475)

  • 如果FunctionsReturnString = true在连接字符串中使用,则没有解释十进制分隔符(根据地区)。(错误# 52187)

  • 在MySQL Connector/NET中,LoadCharsetMap ()的功能CharSetMap类设置了以下错误的映射:

    映射。Add("latin1", new CharacterSet("latin1", 1));

    这意味着,例如,欧元符号没有被正确处理。

    正确的映射应该是:

    映射。Add("latin1", new CharacterSet("windows-1252", 1));

    这是因为MySQLlatin1字符集与windows-cp1252字符集,它扩展了官方的ISO 8859-1或IANA latin1。(错误# 51927)

  • SQL中的非终止字符串抛出CLR异常,而不是语法异常。(错误# 51788)

  • 当调用ExecuteNonQuery在一个命令对象上,发生了以下异常:

    Index和length必须引用字符串中的位置。参数名称:length

    (错误# 51610)

  • MySQL Connector/NET 6.3.1安装失败。(Bug #51407, Bug #51604)

  • 当按类型继承使用表并列出父表的内容时,查询的结果是一列子对象,即使没有具有相同父Id的相关子记录。(错误# 49850)