generated at
Knex.js
概要
Node.js向けのクエリビルダ

DML
insert
javascript
await knex.insert([ { id: 1, name: 'hoge' }, { id: 2, name: 'fuga' }, ]).into('users');

DDL
テーブルの作成
javascript
await knex.schema.createTable(tableName, t => { t.increments('id').primary(); t.string('name', lengthOfNameColumn).notNullable(); t.integer('user_id').notNullable(); t.foreign('user_id').references('id').inTable('users'); });

マイグレーション
1. knexfileを生成する。
$ knex init
migrate:up v0.17.0~
migrate:down v0.17.1~

ロギング
Knexのインスタンス生成時に debug オプションを指定します
javascript
const KnexFactory = require('knex'); const knex = KnexFactory({ client: 'sqlite3', ... debug: true, });
上記のように設定しておくと、全てのクエリの実行時にログが出力されます

特定のクエリを実行する際のみロギングを有効/無効化する。
javascript
await knex.insert([ { id: 1, name: 'hoge' }, { id: 2, name: 'fuga' }, ]).into('users').debug(true);
debug メソッドを利用することで、ロギングの有効/無効を制御できます