MySQL连接器/NET开发指南
这是第一个后ga版本,修复了最近发现的bug。
如果在尝试建立MySQL数据库连接时发生了某种套接字异常,MySQL Connector/NET将显示一个异常消息,该异常消息似乎与底层问题无关。这掩盖了问题,使诊断问题更加困难。
例如,当使用TCP/IP建立数据库连接时,本地机器上的Windows分配了一个临时端口,该端口与仍在使用的套接字地址冲突,则Windows/。NET将抛出一个套接字异常,并带有以下错误文本:
每个套接字地址(协议/网络地址/端口)通常只允许使用一次IP地址/端口.
然而,MySQL Connector/NET掩盖了这个套接字异常,并显示了一个异常,包含以下文本:
无法连接到任何指定的MySQL主机。
(错误# 45021)
一个包含转义反斜杠的SQL查询字符串导致了一个异常:
Index和length必须引用字符串中的位置。参数名称:length at System.String。在MySql.Data.MySqlClient.MySqlTokenizer.NextParameter()的内部substringwithchecks (Int32 startIndex, Int32 length, Boolean fAlwaysCopy)在mysql . data . mysqlclient . prepareablestatement . execute()在mysql . data . mysqlcommand . mysqlcommand中的internalindparameters (String sql, MySqlParameterCollection参数,MySqlPacket包)。MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()的ExecuteReader(CommandBehavior行为)
(错误# 44960)
Microsoft Visual Studio解决方案文件
MySQL-VS2005.sln
是无效的。有几个项目无法加载,因此不可能从源代码构建MySQL Connector/NET。(错误# 44822)当试图修改插入、更新或删除命令时,数据集编辑器产生错误:
WHERE子句在'@'附近出错。无法解析查询文本。
(错误# 44512)
MySQL Connector/NET 6.0.3中的DataReader将BINARY(16)字段视为长度为16的GUID。(错误# 44507)
当创建一个新的数据集时,产生以下错误:
打开数据库连接失败。无法加载名称为'MySQL.Data.VisualStudio.StoredProcedureColumnEnumerator'的类型
(错误# 44460)
MySQL Connector/NET MySQLRoleProvider报告说没有角色,即使角色存在。(错误# 44414)
MySQL Connector/NET在使用加密时缺少验证服务器证书的功能。这使得对连接进行中间人攻击成为可能,这破坏了SSL提供的安全性。(错误# 38700)