このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

node.js で sqliteを扱う sqlite3-webapi-kit

JavaScript

2015.04.08

この記事は最終更新日から1年以上が経過しています。

お久しぶりな気が。。

日々、開発環境でnodeを扱っているのですが、sqliteも扱うことがあったので書いておきます!

node モジュールの

sqlite3-webapi-kit

https://www.npmjs.com/package/sqlite3-webapi-kit

がいい感じぽいのでその使い方などとなります。

sqlite

sqliteってなんですか。って方は過去の記事

http://www.webcyou.com/?p=3194

等を参照して頂ければと思います。

なにはともあれ、とりあえず、sample.dbを作成。

sqlite3 sample.db

テーブルを作成。

CREATE TABLE sample(id INTEGER PRIMARY KEY,name VARCHAR(255));

node sqlite とsqlite3-webapi-kitをインストール

npmでnodeモジュールのsqliteとsqlite3-webapi-kitをインストールします。

https://www.npmjs.com/package/sqlite3

https://www.npmjs.com/package/sqlite3-webapi-kit

npm install sqlite3
npm install sqlite3-webapi-kit

インストール完了しましたら準備OK!

公式サイトを参考に

https://www.npmjs.com/package/sqlite3-webapi-kit

 

モジュール読み込み

sqlited = require('sqlite3-webapi-kit');

基本サンプル

var sqlited = require('sqlite3-webapi-kit'); 
sqlited.open('/path/to/hoge.db3', function (err) { 
    sqlited.listen(4983, function () { 
        console.log('server start'); 
    });
});

sqlite3.listenとなっているとどうもエラっていたので変更。

あと、

setHook(function)

こちら、「フック関数を指定しない場合はすべてのアクセスを許可します。」と記述されているのですが、どうも指定がないとエラってしまう。

公式サイトにあるようにこちらを記述。

sqlited.setHook(function (remoteAddress, request) { 
    // ローカルネットワークのみ許可 
    return /^(192\.168\.|127\.0\.0\.1)/.test(remoteAddress); 
});

これでOK!

ターミナルから

curl http://localhost:4983/select?table=user

叩くなり、ブラウザでhttp://localhost:4983/select?table=user など叩くなりすると、resultがjsonで返ってきます。

{
  "result": [
    { "id": 1, "name": "taro", "sex": "male", "age": 30 },
    { "id": 2, "name": "jiro", "sex": "male", "age": 25 },
    { "id": 3, "name": "saburo", "sex": "male", "age": 20 }
  ]
}

テーブルにデータ挿入する際も

http://localhost:4983/update?table=user&set=name=%27taro%27,age=20&conditions=flag%20is%20null

こんな感じで入っちゃいます。

ローカル環境でDB建てたい時はサクッと利用できますね。

これ使ってちょっとしたツールを作っていますので、近いうち紹介できればと!

 

Band’s

また、「Band’s」も日々更新しておりますのでよろしければ「いいね」押してもらえればと!!

http://bands-music.jp/

ではでは!

また。

Comment

Related Article

Vue.js + SSR (Universal JavaScript)環境を、「NUXT.js」でサクッと構築する方法。

2017.10.09

フロントエンド開発が捗る JSON Serverについて

2017.07.10

技術書、参考書のしおりには【BOOK DARTS】がオススメ!

2017.07.01

会社で npm Private導入して、1ヶ月で8個ほどパッケージ作成したお話。

2017.06.02

Vue.js が予想以上に良かったので、既存WordPressに導入。Vue.js (vue-class-component) + TypeScript + WordPress で作る、記事読み込み component 「実装編」

2017.03.26

Vue.js が予想以上に良かったので、既存WordPressに導入。Vue.js (vue-class-component) + TypeScript + WordPress で作る、記事読み込み component 「環境構築編」

2017.02.21

Facebook製 JavaScript 関数ライブラリ。Immutable.js がいい感じ!

2016.07.31

【JS】フロントでレコメンドアルゴリズムを簡単実装できるJavaScriptライブラリ「RecommendJS」を公開しました。

2016.05.30

JavaScript ビット演算・ビットマスクについてまとめてみました。

2016.03.15

マテリアルデザイン対応!タッチ、クリックでエフェクト。RippleEffectJSを公開しました!

2016.02.01

CATEGORY LIST

LATEST NEWS

iPhoneXで、ubuntuを動かす。

サーバー

2018.06.09

仮想通貨(暗号通貨)の作り方 その2 (Gethの使い方)

暗号通貨、ブロックチェーン

2018.05.20

$PAC (パックコイン)Macでマスターノードを建てる方法

暗号通貨、ブロックチェーン

2018.05.14

ついに「ウェブ帳」リニューアルしましたぁ!!!(PC 版)

イベント

2018.05.07

Raspberry Pi 3 Model B+ 2018 ニューモデルを購入!!

RaspberryPi

2018.04.23

仮想通貨(暗号通貨)の作り方 その1

暗号通貨、ブロックチェーン

2018.04.09

iPad Proで開発を行いたい。

iPad

2018.03.29

CPU使用しすぎて、Conohaからサーバーシャットダウンされた件。

tool

2018.03.28

春の大掃除。VHSに続いて、カセットテープもデジタル化!microSD保存 MP3変換プレーヤーを使ってみた。

tool

2018.03.27

Macで、VHSダビング I-O DATA ビデオキャプチャー 「アナレコ」を使ってみた。

tool

2018.03.27

ご報告

イベント

2018.02.02

明けましておめでとうございます。(遅め

イベント

2018.01.16

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US