* It was not possible to delete multiple connection attributes using the OPT_CONNECT_ATTR_DELETE option. This can now be done using the std::list< sql::SQLString > type.
* MySQL_Prepared_Statement::getMoreResults() functionality has been implemented, so multiple result sets now can be fetched using a prepared statement.
* The following connection options have been implemented: MYSQL_DEFAULT_AUTH, MYSQL_OPT_CONNECT_ATTR_DELETE, MYSQL_OPT_CONNECT_ATTR_RESET, MYSQL_OPT_LOCAL_INFILE, MYSQL_PLUGIN_DIR, MYSQL_READ_DEFAULT_FILE, MYSQL_READ_DEFAULT_GROUP, MYSQL_SET_CHARSET_DIR, and max_statement_timeout for session-based query timeout.
* These functions were added: Connection::isValid() checks whether the connection is alive, and Connection::reconnect() reconnects if the connection has gone down.
* The Boost dependency was removed from the Connector/C++ API headers. These headers were using the boost::variant type, making it impossible to use Connector/C++ binaries without having Boost installed.
* Connector/C++ now supports the following connection options: sslVerify (boolean), sslCRL (string), and sslCRLPath (string). These correspond to the MYSQL_OPT_SSL_VERIFY_SERVER_CERT, MYSQL_OPT_SSL_CRL, and MYSQL_OPT_SSL_CRLPATH options for the mysql_options() C API function.
* Connector/C++ has new functions to provide schema, table, and column character set and collation metadata for result sets:
ResultSet * DatabaseMetaData::getSchemaCollation(const sql::SQLString& catalog, const sql::SQLString& schemaPattern)
ResultSet * DatabaseMetaData::getSchemaCharset(const sql::SQLString& catalog, const sql::SQLString& schemaPattern)
ResultSet * DatabaseMetaData::getTableCollation(const sql::SQLString& catalog, const sql::SQLString& schemaPattern, const sql::SQLString& tableNamePattern)
ResultSet * DatabaseMetaData::getTableCharset(const sql::SQLString& catalog, const sql::SQLString& schemaPattern, const sql::SQLString& tableNamePattern)
SQLString ResultSetMetaData::getColumnCollation(unsigned int columnIndex)
SQLString ResultSetMetaData::getColumnCharset(unsigned int columnIndex)
* Connector/C++ now supports the MYSQL_OPT_CONNECT_ATTR_ADD option, which accepts an std::map argument. This option corresponds to the MYSQL_OPT_CONNECT_ATTR_ADD option for mysql_options4().
* Connector/C++ now supports a useLegacyAuth connection option, which corresponds to the MYSQL_SECURE_AUTH option for mysql_options().
* Connector/C++ is now compiled and linked with Connector/C 6.1.5 rather than with libmysql.
Bugs Fixed
* MySQL_ResultSetMetaData::getColumnTypeName() returned UNKNOWN for LONG_BLOB fields.
* Definitions for character sets and collations were added (utf8mb4 in particular).
* Connector/C++ version-information methods have been revised to return the correct values.
MySQL Connector/C++ is a MySQL database connector for C++. It lets
you develop C++ applications that connect to the MySQL Server.
MySQL Connector/C++ offers the following benefits for C++ users
compared to the MySQL C API (MySQL client library):
* Convenience of pure C++; no C function calls required
* Supports JDBC 4.0, an industry standard API
* Supports the object-oriented programming paradigm
* Reduces development time