Я не знаю об этом подходе JSON, так как я использую только Schema Builder.
Похоже (пример geostuff
стол с id
, lat
и lng
столбцов):
var knex = require('knex')({client:'sqlite3',connection:{filename: 'sample.sqlite3'}});
knex.schema.createTable('geostuff', function(table) {
table.increments('id').primary();
table.float('lat', 14, 10).notNullable();
table.float('lng', 14, 10).notNullable();
}).then(function() {
console.dir('table created');
}).catch(function(err) {
console.log('table not created');
console.dir(err);
});
Обратите внимание на точность спецификаторы широко не поддерживается. PostgreSQL поддерживает float(precision)
, но SQLite3 (из примера) не делает (еще лучше: все равно). К счастью, knex.js скрывает эти особенности.