ADBC
Arrow 数据库连接
|
AdbcDatabase、AdbcConnection 和 AdbcStatement 的 private_data 的基类。 更多...
#include <base_driver.h>
公共成员函数 | |
virtual AdbcStatusCode | Init (void *parent, AdbcError *error) |
初始化对象。 | |
virtual AdbcStatusCode | Release (AdbcError *error) |
完成对象。 | |
virtual Result< Option > | GetOption (std::string_view key) |
获取选项值。 | |
virtual AdbcStatusCode | SetOption (std::string_view key, Option value, AdbcError *error) |
设置选项值。 | |
保护属性 | |
LifecycleState | lifecycle_state_ |
私有成员函数 | |
template<typename T> | |
AdbcStatusCode | CSetOption (const char *key, T value, AdbcError *error) |
AdbcStatusCode | CSetOptionBytes (const char *key, const uint8_t *value, size_t length, AdbcError *error) |
template<typename T> | |
AdbcStatusCode | CGetOptionStringLike (const char *key, T *value, size_t *length, AdbcError *error) |
template<typename T> | |
AdbcStatusCode | CGetOptionNumeric (const char *key, T *value, AdbcError *error) |
友元 | |
template<typename DatabaseT, typename ConnectionT, typename StatementT> | |
class | Driver |
AdbcDatabase、AdbcConnection 和 AdbcStatement 的 private_data 的基类。
此类处理选项设置和获取。
获取选项值。
在 adbc::driver::Connection< Derived > 中重新实现。
|
inlinevirtual |
初始化对象。
在 0 个或多个 SetOption 调用之后调用。通常,您不需要直接覆盖它。相反,请使用由 Database/Connection/Statement 提供的类型化 InitImpl。
[in] | parent | 指向 AdbcDatabase 或 AdbcConnection 实现的指针(如果适用),或者为 nullptr。 |
在 adbc::driver::BaseConnection< Derived >、adbc::driver::BaseDatabase< Derived >、adbc::driver::BaseStatement< Derived >、adbc::driver::Connection< Derived > 和 adbc::driver::Statement< Derived > 中重新实现。
|
inlinevirtual |
完成对象。
如果对象未处于有效状态(例如,阻止关闭具有打开语句的连接)或在资源清理可能失败时清理资源,则可以使用此方法返回错误。 无误的资源清理(例如,释放内存)通常应在析构函数中处理。
通常,您不需要直接覆盖它。相反,请使用由 Database/Connection/Statement 提供的类型化 ReleaseImpl。
在 adbc::driver::BaseConnection< Derived >、adbc::driver::BaseDatabase< Derived >、adbc::driver::BaseStatement< Derived >、adbc::driver::Connection< Derived > 和 adbc::driver::Statement< Derived > 中重新实现。
|
inlinevirtual |