为准备好的语句添加了测试夹具。
所有类型类现在都实现了
SerializeBinary
一种将数据发送到PacketWriter
.添加
PacketWriter
了将启用未来低内存大对象处理的类。修复了运行准备好的语句和存储过程时的许多小错误。
更改命令,以便在旧语法模式下执行带参数的存储过程时不会抛出异常。
SingleRow
即使有限制,行为现在也能正常工作。GetBytes
现在只适用于二进制列。Logger 现在会截断长 SQL 命令,因此 blob 列不会破坏我们的日志。
除非另有设置,否则主机和数据库现在具有默认值“”。
连接超时似乎被忽略了。(漏洞 #5214)
为错误# 5051 添加了测试用例:GetSchema 无法正常工作。
修复了当列为键时
GetSchema
会返回 false 的问题。IsUnique
MySqlDataReader GetXXX
方法现在使用字段级MySqlValue
对象并且不执行转换。DataReader
返回NULL
时间列。(缺陷号 5097)为 .添加了测试用例
LOAD DATA LOCAL INFILE
。添加了 replacetext 自定义 nant 任务。
添加
CommandBuilderTest
夹具。添加了最后一个获胜功能
CommandBuilder
。修复了持久安全信息案例问题。
已修复
GetBool
,因此 1、true、“true”和“yes”都算作 true。使参数标记可配置。
添加了“旧语法”连接字符串参数以启用 @ 参数标记。
MySqlCommandBuilder
. (漏洞 #4658)ByteFX.MySqlClient
Persist Security Info
如果为 false,则缓存密码 。(漏洞 #4864)更新了所有源文件中的许可证横幅以包含 FLOSS 例外。
为大多数当前 MySql 类型添加了新的 .Types 命名空间和实现。
添加
MySqlField41
为 的子类MySqlField
。更改了许多类以现在使用新的 .Types 类型。
将 类型更改
enum int
为Int32
、和。short
Int16
bigint
Int64
添加了虚拟类型
UInt16
,UInt32
, 和UInt64
以允许生成无符号参数。从连接池中拉出连接时,连接现在会被重置。
重构驱动程序中的授权代码,使其可用于授权和重置。
在.
UserReset
_PoolingTests.cs
COM_CHANGE_USER
当从池中拉出时, 现在使用重置连接 。实施
SingleResultSet
的行为。实现了对 unicode 的支持。
添加了 utf-8 和 ucs-2 的字符集映射。
使用 bytefx .net mysql 驱动程序的时间字段溢出(缺陷 #4520)
修改了数据类型测试夹具中的时间测试,以检查小时 > 24 的时间跨度。
带有反斜杠的错误字符串在
ByteFx.Data.MySqlClient.MySqlParameter
. (漏洞 #4505)将代码添加到参数测试用例 TestQuoting 以测试反斜杠。
MySqlCommandBuilder
多字列名失败。(漏洞 #4486)修复了
TokenizeSql
下划线会终止参数名称中的字符捕获的错误。为列名中的空格添加了测试用例。
MySqlDataReader.GetBytes
不能正常工作。(漏洞 #4324)将测试用例添加
GetBytes()
到DataReader
测试夹具。现在将所有服务器变量读
InternalConnection.Configure
入Hashtable
.现在
string[]
用于索引映射中CharSetMap
。为 SQL 中的回车添加了 CRInSQL 测试用例。
将 maxPacketSize 设置为默认值
Driver.ctor
。参数上的设置
MySqlDbType
不会设置泛型类型。(漏洞 #4442)删除了过时的数据类型
Long
和LongLong
.在连接字符串上使用“使用管道”时抛出溢出异常。(漏洞 #4071)
将“使用管道”关键字更改为“管道名称”或只是“管道”。
启用从单个查询读取多个结果集。
ServerStatusFlags
向枚举 添加了 flags 属性 。ServerStatus
将枚举的 名称更改为ServerStatusFlags
.插入的数据行未正确更新。
错误处理显示创建表。(漏洞 #4074)
更改
Packet.ReadLenInteger
并ReadPackedLong
添加packet.ReadPackedInteger
始终读取包含 2、3、4 的整数。添加
syntax.cs
了测试夹具以测试各种 SQL 语法错误。时间值处理不当。现在 00:00:00 的时间值不被视为空值。(漏洞 #4149)
将所有测试套件文件移动到
TestSuite
文件夹中。修复了空列会将结果数据包指针向后移动的错误。
添加了新的 nant 构建脚本。
清除表名,以便在下一个
GenerateSchema
. (漏洞 #3917)GetValues
总是返回零并且也总是试图复制所有字段而不是尊重传入数组的大小。(错误#3915)实现了共享内存访问协议。
为 MySQL 4.1 实现了准备好的语句。
为 MySQL 5.0 实现了存储过程。
改名
MySqlInternalConnection
为InternalConnection
。SQL 现在被解析为字符,修复了其他语言的问题。
添加了日志记录并允许批处理连接字符串选项。
RowUpdating
设置属性时未设置事件DataAdapter
。(漏洞 #3888)修复了字符集映射中的错误。
实施了 4.1 身份验证。
改进了驱动程序中的打开/授权代码。
改进了连接期间连接位的设置方式。
数据库名称现在在初始握手期间传递给服务器。
将客户端的命名空间更改为
MySql.Data.MySqlClient
.将客户端的程序集名称更改为
MySql.Data.dll
.将所有源文件中的许可证文本更改为 GPL。
添加了
MySqlClient.build
Nant 文件。删除了单声道批处理文件。
将一些未使用的文件移动到 notused 文件夹中,以便 nant 构建文件可以使用通配符。
实现了共享内存访问。
代码结构的重大改进。
准备好的语句现在适用于 MySql 4.1.1 及更高版本。
完成了 4.0、4.1.0 和 4.1.1 的身份验证实施。
将命名空间从
MySQL.Data.MySQLClient
back 更改为MySql.Data.MySqlClient
.修复了
CharSetMapping
尝试将文本名称用作整数的错误。将命名空间更改为
MySQL.Data.MySQLClient
.UC2004 的集成身份验证更改。
修复了在读取数据之前或之后调用数据读取器上的任何 GetXXX 方法不会引发相应异常的错误(感谢 Luca Morelli)。
在 parameter.cs 中添加
TimeSpan
代码以将时间跨度对象正确序列化为 mysql 时间格式(感谢 Gianluca Colombo)。添加
TimeStamp
到参数序列化代码。阻止DataAdapter
更新正常工作(感谢 Michael King)。修复了拼写错误
MySqlHelper.cs
(感谢 Patrick Kristiansen)。