ADBC
Arrow 数据库连接
加载中...
搜索中...
无匹配项
database.h
1// Apache 软件基金会 (ASF) 根据以下条款对该文件进行许可
2// 一个或多个贡献者许可协议。请参阅 NOTICE 文件
3// 获取有关版权所有权的其他信息
4// ASF 根据 Apache 许可证 2.0 版(以下简称
5// “许可证”)向您授予此文件的许可证;除非遵守
6// 许可证,否则您不得使用此文件。您可以在以下位置获取许可证副本
7//
8//
9// https://apache.org/licenses/LICENSE-2.0
10//
11// 除非适用法律要求或书面同意,否则
12// 根据许可证分发的软件按“原样”分发,
13// 不提供任何形式的明示或暗示的保证或条件。
14// 请参阅许可证以了解
15// 有关权限和限制的具体语言
16// 根据许可证。
17
18#pragma once
19
20#include <string_view>
21#include <utility>
22
23#include <arrow-adbc/adbc.h>
24
25#include "driver/framework/base_driver.h"
27
28namespace adbc::driver {
36template <typename Derived>
37class Database : public BaseDatabase<Derived> {
38 public:
39 using Base = Database<Derived>;
40
42 ~Database() = default;
43
46
49
51 virtual Status SetOptionImpl(std::string_view key, Option value) {
52 return BaseDatabase<Derived>::SetOptionImpl(key, value);
53 }
54
55 private:
56 Derived& impl() { return static_cast<Derived&>(*this); }
57};
58} // namespace adbc::driver
定义 base_driver.h:782
virtual Status InitImpl()
初始化数据库。
定义 base_driver.h:809
virtual Status SetOptionImpl(std::string_view key, Option value)
设置选项。可以在 InitImpl 之前调用。
定义 base_driver.h:815
virtual Status ReleaseImpl()
释放数据库。
定义 base_driver.h:812
AdbcDatabase 的 CRTP 基本实现。
定义 database.h:37
virtual Status ReleaseImpl()
释放数据库。
定义 database.h:48
virtual Status SetOptionImpl(std::string_view key, Option value)
设置选项。可以在 InitImpl 之前调用。
定义 database.h:51
virtual Status InitImpl()
初始化数据库。
定义 database.h:45
一个类型化的选项值包装器。它目前不尝试转换(即,获取 double 选项...
定义 base_driver.h:59
AdbcStatusCode + AdbcError 的包装器。
定义 status.h:43