Node.js Sqlite3错误:';没有此类表格';使用nodemon启动节点服务器时
问题: 当我使用命令Node.js Sqlite3错误:';没有此类表格';使用nodemon启动节点服务器时,node.js,sqlite,nodemon,Node.js,Sqlite,Nodemon,问题: 当我使用命令node\u modules/.bin/nodemon path/to/server.js启动node.js服务器时,当我的代码试图查询我的sqlite3数据库时,我得到一个错误:“没有这样的表” 详细信息: 命令:node\u modules/.bin/nodemon path/to/server.js与nodemon path/to/server.js相同。我使用它是因为我已经在本地安装了nodemon 当我运行命令:node path/to/server.js时,应用
node\u modules/.bin/nodemon path/to/server.js启动node.js服务器时,当我的代码试图查询我的sqlite3数据库时,我得到一个错误:“没有这样的表”
详细信息:
- 命令:
node\u modules/.bin/nodemon path/to/server.js
与nodemon path/to/server.js
相同。我使用它是因为我已经在本地安装了nodemon
- 当我运行命令:
node path/to/server.js
时,应用程序按预期运行
软件包版本:
- 节点:v4.2.6
- sqlite3:^3.1.8
- 节点名:^1.11.0
代码示例:
下面是nodemon启动服务器时抛出错误的函数。我认为,当服务器由节点启动时,它可以工作,这不是问题所在。然而,也许这很重要
function selectPassword(callback){
dataBase = new sqlite3.Database(dataBaseFile, function(error){
if(error){
return callback('Error at select password: ' + error);
}
//this '.get' method throws the error when the server is
// started by nodemon.
dataBase.get('SELECT password FROM users WHERE id = 1', function(error, row){
if(error){
console.log('Error at get query: ' + error);
return callback(error, null);
}
//more code
});
});
}
说明:
这并不真的困扰我。我主要是问是否有人出于好奇知道为什么会这样。我想知道我做错了什么 当前工作目录将不同,并且您可能在某个地方使用相对路径(并以空数据库结束)。如果您引用的文件是相对于源文件的,请使用path.join(\uuu dirname,…)
。@cartant听起来很有逻辑。我甚至没想过。我来试一试。当前的工作目录将不同,您可能在某个地方使用了相对路径(并以空数据库结束)。如果您引用的文件是相对于源文件的,请使用path.join(\uuu dirname,…)
。@cartant听起来很有逻辑。我甚至没想过。我要试一试。