ADBC
Arrow 資料庫連線能力
載入中...
搜尋中...
沒有符合項目
database.h
1// 根據一項或多項貢獻者授權協議,授權給 Apache Software Foundation (ASF)
2// 或更多貢獻者授權協議。請參閱 NOTICE 檔案
3// 隨此工作散佈以取得更多資訊
4// 關於著作權歸屬。ASF 授權此檔案
5// 根據 Apache License 2.0 版條款 (
6// "License") 授權給您;除非遵循
7// 該 License,否則您不得使用此檔案。您可以在以下網址取得 License 的副本:
8//
9// http://www.apache.org/licenses/LICENSE-2.0
10//
11// 除非適用法律要求或以書面同意,
12// 否則依據 License 散佈的軟體是以
13// "現狀" BASIS 散佈,不帶任何明示或暗示的
14// 任何形式的保證或條件。請參閱 License 以取得
15// 關於權限和限制的特定語言
16// 在 License 條款下。
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