「DBreeze」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
imported>Administrator
 
27行目: 27行目:
 
                 transaction.Insert("table", "key", "val2");
 
                 transaction.Insert("table", "key", "val2");
  
                 // commit前のも取れる
+
                 // スコープ内であればcommit前のも取れる
 
                 var row = transaction.Select<string,string>("table","key");
 
                 var row = transaction.Select<string,string>("table","key");
 
                 Console.WriteLine(row.Value);
 
                 Console.WriteLine(row.Value);

2018年3月8日 (木) 03:03時点における最新版

DBreezeとは、C#で書かれたオンディスク型のKeyValueストレージである。 ストアではなくストレージ。

Xamarinでも.NET Coreでも使える。

KVSだが入出力メソッドの名称がSQL系っぽい名称なのが特徴。

  • GetTransactionでロック取得(スレッドセーフ対応)
  • Insertで保存(KVSなのでUpdateなどない。上書き)
  • Selectで取得(KVSなので戻ってくるのは1行)
  • Commitでバッチ書き込み

使い方[編集 | ソースを編集]

    using System;
    using DBreeze;

    class MainClass
    {
        public static void Main(string[] args)
        {
            var engine = new DBreezeEngine("db");

            using (var transaction = engine.GetTransaction())
            {
                // KVSなのでval2で上書き
                transaction.Insert("table", "key", "val1");
                transaction.Insert("table", "key", "val2");

                // スコープ内であればcommit前のも取れる
                var row = transaction.Select<string,string>("table","key");
                Console.WriteLine(row.Value);

                // バッチ書き込み
                transaction.Commit();
            }
        }
    }

外部リンク[編集 | ソースを編集]