LevelDB C++教程: 如何開啟和關閉資料庫
簡介
LevelDB提供持久鍵值儲存功能。鍵和值是任意位元組陣列。根據使用者指定的比較函式,在鍵值儲存區內對鍵進行排序。
本文將介紹LevelDB的開啟和關閉資料的基本操作,為後面的鍵值儲存操作做準備。
程式碼示例
下面的程式碼功能實現了完整的開啟和關閉資料庫的功能,下面會對程式碼來進行逐一講解:
#include <iostream>
#include <cassert>
#include <leveldb/db.h>
int main(int argc, const char *argv[])
{
leveldb::DB *db;
leveldb::Options options;
options.create_if_missing = true;
leveldb::Status status = leveldb::DB::Open(options, "/tmp/testdb", &db);
assert(status.ok());
std::cout << "Hello, world with leveldb in it!\n";
delete db;
return 0;
}
開啟資料庫
LevelDB資料庫具有一個與檔案系統目錄對應的名稱。資料庫的所有內容都儲存在此目錄中。下列的程式碼中展示如何開啟一個LevelDB資料庫,必要時建立它:
#include <cassert>
#include "leveldb/db.h"
leveldb::DB* db;
leveldb::Options options;
options.create_if_missing = true;
leveldb::Status status = leveldb::DB::Open(options, "/tmp/testdb", &db);
assert(status.ok());
如果要在資料庫已存在時引發錯誤(raise an error),請在leveldb :: DB :: Open呼叫之前新增以下行:
options.error_if_exists = true;
關閉資料庫
在使用完資料庫之後,需要刪除資料庫物件:
... open the db as described above ...
... do something with db ...
delete db;
Status操作結果
您可能已經注意到上面的leveldb :: Status型別。 LevelDB中的大多數函式都會返回此型別的值您可以檢查這樣的結果是否正常,還列印相關的錯誤訊息:
leveldb::Status s = ...;
if (!s.ok()) cerr << s.ToString() << endl;
編譯執行
在Linux下,通過下面的命令可以對程式進行編譯連結:
gcc -o test test.cpp -L/usr/local/lib/ -lleveldb -lstdc++
編譯連結後會生成test可執行檔案,執行時能夠輸出上面的"Hello World"資訊。
相關文章
- Oracle資料庫歸檔模式的開啟和關閉Oracle資料庫模式
- db2資料庫的啟動和關閉DB2資料庫
- 3.3.1 關於關閉資料庫資料庫
- openguass 3.1.0 資料庫啟動,關閉,狀態檢查資料庫
- mongodb關閉資料庫例項MongoDB資料庫
- oracle資料庫的啟動關閉與各種服務Oracle資料庫
- C++如何關閉檔案C++
- 如何開啟關閉Edge滑鼠手勢
- linux關閉防火牆命令 linux防火牆關閉和開啟命令Linux防火牆
- 4.2.1.11 學習如何啟動和關閉CDB
- 3.3.3 使用immiedit模式關閉資料庫模式資料庫
- 如何解析 Ethereum 資料:讀取 LevelDB 資料
- Android 書本開啟和關閉動畫Android動畫
- mysql 開啟和關閉日誌記錄MySql
- 3 啟動和關閉
- LevelDB C++教程: Linux下編譯與安裝C++Linux編譯
- LevelDB C++教程: Linux系統中安裝snappyC++LinuxAPP
- Mac操作指南:Mac Monterey實況文字功能如何開啟和關閉?Mac
- 如何開啟/關閉 GitLab 的版本檢查功能?Gitlab
- Mac技巧12:MacBook Pro如何開啟、關閉SIP?Mac
- 在資料庫繁忙時如何快速有效的關閉MySQL服務資料庫MySql
- Fabric 1.0原始碼分析(23)LevelDB(KV資料庫)原始碼資料庫
- macOS Big Sur如何開啟或關閉 Mac 啟動聲音Mac
- nginx 開啟、關閉、重啟常用操作Nginx
- Oracle 12.2 Heavy swapping 資料庫自動關閉OracleAPP資料庫
- MySQL資料庫如何啟動?MySql資料庫
- 資料庫資料恢復-oracle資料庫報錯無法開啟的如何恢復資料?資料庫資料恢復Oracle
- C++編譯SQLite資料庫以及如何使用加密資料庫SQLCipherC++編譯SQLite資料庫加密
- 1.2.4. 任務4:建立和開啟資料庫資料庫
- win10如何關閉開啟的埠_win10怎麼關閉系統埠Win10
- Mac新手使用技巧——如何在Mac上開啟和關閉螢幕使用時間Mac
- [20210722]資料庫異常關閉的處理.txt資料庫
- 7_Ubuntu16.04開啟和關閉桌面顯示(201910122)Ubuntu
- win10系統如何關閉autodesk開機啟動Win10
- ubuntu 開啟/關閉ubuntu防火牆Ubuntu防火牆
- 如何將資料從Hadoop匯出到關係型和NoSQL資料庫?HadoopSQL資料庫
- XamarinSQLite教程Xamarin.iOS專案中開啟資料庫檔案SQLiteiOS資料庫
- C++ Qt開發:QSqlDatabase資料庫元件C++QTSQLLDADatabase資料庫元件