MySQL 连接器/C++ 发行说明  / MySQL 连接器/C++ 1.0 中的更改  /  MySQL Connector/C++ 1.0.3 的变化(2009-03-02,Alpha)

MySQL Connector/C++ 1.0.3 的变化(2009-03-02,Alpha)

添加或更改的功能

  • test/unit/classes. 这些测试主要是关于代码覆盖率的。驱动程序的大部分实际功能都是通过 中找到的测试来测试的 test/CJUnitPort

  • 添加到由返回的列表中的新数据类型 DatabaseMetaData::getTypeInfo()FLOAT UNSIGNED, DECIMAL UNSIGNED, DOUBLE UNSIGNED。这些测试可能不在 JDBC 规范中。但是,由于更改,您应该能够查找返回的每个类型和类型名称,例如, ResultSetMetaData::getColumnTypeName()

  • MySQL_Driver::getPatchVersion介绍。

  • 由于新的缓冲 ResultSet实施,性能得到了重大改进。

  • 添加了test/unit/README用于编写错误和回归测试的说明。

  • 对 STLPort 的实验性支持。此功能可能会在以后随时再次删除,恕不另行通知!键入 cmake-L以获取配置说明。

  • 添加了启用属性的连接方法,添加了许多连接选项。这使用键值对的字典(映射)。添加的方法是 Driver::connect(map), 和 Connection::Connection(map)

  • 新的BLOB实施。 sql::Blob被删除以支持 std::istream. C++的 IOStream库非常强大,类似于PHP的流。重新发明轮子是没有意义的。例如,如果数据在内存中,您可以将std::istringstream 对象传递给,或者只是打开一个文件并让它流式传输到数据库,或者写入自己的流。这也适用于 您只能复制数据(如果是缓冲结果集)或流数据(如果已实现)的地方。 setBlob()std::fstreamgetBlob()

  • 实施ResultSet::getBlob()后返回std::stream.

  • 固定 MySQL_DatabaseMetaData::getTablePrivileges()。在第一个单元测试框架中添加了测试用例。

  • 实现 MySQL_Connection::setSessionVariable()用于设置系统变量,例如 sql_mode.

  • 实施 MySQL_DatabaseMetaData::getColumnPrivileges()

  • cppconn/datatype.h已更改,现在再次使用。重新实现了类型子系统以使其更有用——二进制和非二进制字符串的更多类型。

  • MySQL_DatabaseMetaData::getImportedKeys()5.1.16 之前的 MySQL 版本 的实现 使用SHOW,以及更高版本使用INFORMATION_SCHEMA

  • 实施 MySQL_ConnectionMetaData::getProcedureColumns()

  • make package_source现在用 bzip2 打包。

  • 重新添加getTypeInfo()了有关 MySQL 和 sql::DataType.

  • 将 的实现更改 MySQL_ConstructedResultSet为使用更高效的 O(1) 访问方法。这应该会提高元数据结果集的使用速度。此外,在构建结果集期间复制较少,这意味着从元数据函数返回的所有结果集将更快。

  • 在内部引入,sql::mysql::MyVal 它具有隐式构造函数。用于 mysql_metadata.cpp使用本机数据而不是始终使用字符串 (varchar) 创建结果集。

  • 改名ResultSet::getLong()ResultSet::getInt64()resultset.h包括 Windows 的 typdefs,以便能够使用int64_t.

  • 介绍ResultSet::getUInt()ResultSet::getUInt64()

  • 改进了 ResultSetMetaData::isReadOnly(). 从视图生成的值是只读的。db这些生成的值没有MYSQL_FIELD 集合,而所有普通列都有。

  • 实施 MySQL_DatabaseMetaData::getExportedKeys()

  • 实施 MySQL_DatabaseMetaData::getCrossReference()

修正错误

  • 错误已修复 MySQL_PreparedResultSet::getString()。返回具有真实数据但长度随机的字符串。现在,字符串被初始化为正确的长度,因此是二进制安全的。

  • 更正了未签名服务器类型的处理以返回正确的值。

  • ResultSetMetaData::isCaseSensitive修复了返回 中数字列的处理 false