Link Search Menu Expand Document

Minimal Start

SpeeDBee/TSのインストールが完了したら、DBを利用する方法についてサンプルを用いながら解説します。 インストールがまだの場合は、こちらを参照ください。

前提条件

動作環境において以下をインストールしていること

  • make
  • gcc
  • speedbee

SpeeDBeeを利用するプログラムを作成します。

  1. sample.cを作成します。
    下記ソースは、speedbee-ts評価版のリポジトリにあるサンプルプログラムになります。sample1.c

     #include <stdio.h>
     #include <stdlib.h>
     #include <string.h>
     #include "speedbee.h"
    
     int main(int ac, char *av[]) {
         sdtsdb_t db;
    
         if (sd_init(NULL) < 0) {
             printf("error sd_init [%d]\n", sd_get_err());
             return 1;
         }
         printf("-- success sd_init --\n");
    
         if ((db = sdts_open_db(NULL)) == NULL) {
             printf("error sdts_open_db [%d]\n", sd_get_err());
             sd_end();
             return 1;
         }
         printf("-- success sdts_open_db --\n");
    
         if (sdts_close_db(db) < 0) {
             printf("error sdts_close_db [%d]\n", sd_get_err());
             sd_end();
             return 1;
         }
         printf("-- success sdts_close_db --\n");
    
         if (sd_end() < 0) {
             printf("error sd_end [%d]\n", sd_get_err());
             return 1;
         }
         printf("-- success sd_end --\n");
    
         return 0;
     }
    

上記サンプルは、下記手順で処理を行っています。

  1. SpeeDBeeの初期化
    SDTS-API を利用する環境の初期化を行います。
  2. DBオープン
    データベースをオープンします。引数のパラメータを指定していないため、メモリDB 機能のみ使用になります。
  3. DBクローズ
    DB をクローズします。メモリDB 機能を利用しているためデータは破棄されます。
  4. SpeeDBeeの終了
    SDTS-API のインターフェース終了処理を行います。

サンプルをコンパイルして実行してみます。

コンパイル

  1. sample.cファイルを作成したフォルダに移動

     $ cd `sample.cのあるフォルダ`
    
  2. コンパイルして実行ファイルを作成

     $ gcc -O2 -Wall -I/usr/local/include/speedbee -L/usr/local/lib -o sample sample.c -lspeedbee -pthread -ldl -lm
    
  3. 実行して下記のようにエラーが出ていなかったらOKです。

     $ ./sample
     -- success sd_init --
     -- success sdts_open_db --
     -- success sdts_close_db --
     -- success sd_end --
    

    PrevionsNext


Back to top

Copyright © 2020 SALTYSTER Inc. All rights reserved.

Page last modified: Jul 13 2020 at 12:00 PM.