Node.js sql语法有错误(连接正常)
我正在使用Node.js和Bookshelf,我是Bookshelf的新手。我做了一个基本的代码,但不工作,我不能保存 代码如下:Node.js sql语法有错误(连接正常),node.js,bookshelf.js,Node.js,Bookshelf.js,我正在使用Node.js和Bookshelf,我是Bookshelf的新手。我做了一个基本的代码,但不工作,我不能保存 代码如下: var bookModel = bookshelf.Model.extend({ tablename: 'book' }); app.get('/addBook/:title/:id', function(req, res) { if (req.params.title != '' && req.params.id != ''){ b
var bookModel = bookshelf.Model.extend({
tablename: 'book'
});
app.get('/addBook/:title/:id', function(req, res) {
if (req.params.title != '' && req.params.id != ''){
bookModel.forge({title: 'test'}).save();
}
我的连接很好
这就是错误:
添加书本:未定义-44未处理的拒绝错误:ER\U PARSE\U错误:
您的SQL语法有错误;检查手册
对应于要使用的正确sy ntax的MySQL服务器版本
在第1行的“(title
)值('toto')”附近
我已经看到这是一个普遍的信息,但我真的不明白。我在文档中搜索了更多信息,但没有找到任何对我有帮助的
谢谢你的帮助 属性
tablename
应该是tablename
(注意大写的“N”):
如果查看您在注释中发布的SQL,它是
插入(title)values(?)
,这是无效的SQL,因为它缺少目标表名。我用这条线索发现了问题。你能再检查一下你的数据库设置中是否设置了正确的SQL方言(客户端:“mysql”
)?如果这是正确的,那么您能否在您的设置中设置debug:true
,并让我们知道为您的代码生成的SQL。@KalleBjörklid我很好地使用mysql选项,我设置了debug:true,这更友好,这是消息:Add book:undefined-44{uu cid:''uuu cid1',method:'insert',options:undefined,bindings:['test'],sql:'插入(title
)值(?)}
var bookModel = bookshelf.Model.extend({
tableName: 'book'
});