我的代码:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '192.168.2.20',
user : 'test',
password : '123123123',
database : 'dbtest',
});
connection.connect(function(err) {
// connected! (unless `err` is set)
});
var query = connection.query('INSERT INTO posts (title) VALUES("data1");');
每次我使用 MySQL Workbench 运行此 SELECT * FROM dbtest.posts;
时,我都看不到任何更改或结果。
使用 mysql-node 的 NodeJS 没有正确编辑我的数据库,我做错了什么?
编辑:
admin$ node debug test.js
< debugger listening on port 5858
connecting... ok
break in test.js:1
1 var mysql = require('mysql');
2 var connection = mysql.createConnection({
3 host : '192.168.2.20',
debug>
我在调用文件时遇到问题吗?它们保存在node_modules下,并且文件与node_modules在同一根目录
最佳答案
您无法使用示例中的代码插入数据,可能是因为您的 MySQL 服务器将 autocommit
系统变量设置为 false
。
在这种情况下,您可以做的是将此变量设置为 true
(请参阅 de docs )或更改代码以强制提交,例如:
connection.query('INSERT INTO posts (title) VALUES("data1");', function(err, result) {
if (err) {
connection.rollback(function () {
throw err;
});
}
connection.commit(function (err) {
if (err) {
connection.rollback(function () {
throw err;
});
}
console.log('Commited!');
});
});
关于javascript - NODEJS 和 mysql-node 并且没有数据库更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23459528/