使用Knex中的内存SQLite数据库“SQLITE_CANTOPEN:无法打开数据库文件”,

时间:2016-12-08 03:14:29

标签: sqlite knex.js

当使用Knex / SQLite运行mocha测试时,我得到Knex:Error Pool2 - Error: SQLITE_CANTOPEN: unable to open database file

我的knexfile:

module.exports = {
    test: {
        client: 'sqlite3',
        connection: {
            filename: ':memory:',
        }
    }
    ...

我在谷歌搜索时发现的唯一参考是错误的'记忆'。

我该如何调试?有没有办法打开knex / SQLite的详细日志记录?

我认为错误发生在初始化,测试之前和beforeEach()之前。当我从sqlite3切换到mysql(我们在dev设置中使用)时,它就可以正常工作。

1 个答案:

答案 0 :(得分:0)

问题是knex没有正确初始化。

我有

var knexfile = require('../knexfile');
var knex = require('knex')(environment);
// instead of require('knex')(knexfile[enviornment])