首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用bookshelf.js创建sqlite

使用bookshelf.js创建sqlite
EN

Stack Overflow用户
提问于 2014-06-10 08:32:24
回答 1查看 3.9K关注 0票数 3

如何使用sqlite3创建新的bookshelf.js数据库文件?如果db文件存在,请连接到它;如果db文件不存在,则创建一个新的db文件。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-20 04:29:49

在幕后,bookshelf使用knex (在当前版本中,您必须显式地使用它来实例化)。

如果在选项中将客户端设置为sqlite3,并且在connection对象(property filename)中指定有效路径,则它将根据需要进行连接或创建(警告:假设您已经读取/写入了文件目标)。

数据库文件不只是创建的原因是您必须先写-所以尝试创建一个模式(knex schema builder)。然后,您应该看到创建了该文件。

说得更清楚一点--以下是你要寻找的东西:

代码语言:javascript
复制
var path = require('path')
    , fs = require('fs')
    , knex = require('knex')
    , bookshelf = require('bookshelf')
    , dbFile = path.join(__dirname, 'app.db')
    , db = null // bookshelf db instance

// init db
db = bookshelf(knex({
    client: 'sqlite3'
    , connection: { filename: dbFile }
}))

// create a schema if no db found
fs.exists(dbFile, function(exists) {
    if (!exists) {
        db.knex.schema.createTable('test_table', function(table) {
            table.increments()
            table.string('some_col')
        })
    }
})

// ... do other stuff here ...
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24136332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档