对于 MySQL Connector/C++ 8.0.11 及更高版本,商业和社区发行版需要 Visual C++ Redistributable for Visual Studio 2015 才能在 Windows 平台上运行。Redistributable 可在 Microsoft 下载中心获得;在安装 Connector/C++ 之前安装它。
-
不兼容的更改: 当没有
_id
属性的文档添加到集合中时,服务器现在会自动为它们生成 ID。服务器确定 ID 格式,从 API 的角度来看应该被认为是不透明的(它们不再基于 UUID)。和以前一样,_id
如果文档已经包含一个属性,则不会生成任何属性。用户提供的文档 ID 不得与集合中其他文档的 ID 冲突。此功能需要 MySQL 8.0 GA 服务器。如果服务器不支持文档 ID 生成,则文档添加操作会返回一个错误,指示缺少文档 ID。
对于 X DevAPI,可以使用
Result.getGeneratedIds()
返回列表的新方法获取文档添加操作生成的 ID。对于 C 的 X DevAPI,可以使用新mysqlx_fetch_generated_id()
函数获取生成的 ID,该函数会为连续的调用一个一个地返回 ID,直到返回NULL
表明不再有生成的 ID 可用。对于 X DevAPI 和 X DevAPI for C,不会返回在添加的文档中明确指定的文档 ID。不兼容:该
getGeneratedIds()
方法替换了现在已删除的getDocumentId()
和 。getDocumentIds()
该mysqlx_fetch_generated_id()
函数替换了mysqlx_fetch_doc_id()
现在已删除的 。有关详细信息,请参阅 使用文档 ID。
-
已实施补丁操作,允许指定类似 JSON 的对象,该对象描述要应用于集合中文档的更改。
对于 X DevAPI,该操作支持用于修补文档
CollectionModify
的新子句。patch()
对于 C 的 X DevAPI,有两个新功能:mysqlx_collection_modify_patch()
直接对满足给定条件的集合中的文档执行修补。将修补操作添加到使用该函数mysqlx_set_modify_patch()
创建的修改语句 。mysql_collection_modify_new()
对于使用遗留 JDBC API 建立的与服务器的连接(即,不是使用 X DevAPI 或 X DevAPI for C 建立的),Connector/C++ 8.0 现在支持一个
OPT_GET_SERVER_PUBLIC_KEY
连接选项,该选项允许从服务器请求 RSA 公钥。对于使用caching_sha2_password
或sha256_password
身份验证插件的帐户,此密钥可在禁用 TLS 的情况下用于基于 RSA 密钥对的密码交换的连接过程中使用。此功能需要 MySQL 8.0 GA 服务器,并且仅支持使用 OpenSSL 构建的连接器/C++。