我已经从MySQL Workbench创建了一个sql数据库(所有表和视图)的导出。删除数据库drop / create行后,我可以通过SQL引擎运行导出文件的内容,一遍又一遍地重新创建表和视图。
但是当我尝试通过felixge / node-mysql填充文件的内容时,我得到了语法错误。
是否有使用node-mysql处理此模式的标准方法?
附件是SQL文件的全部内容,我试图让node-mysql在数据库上执行。无论数据库是空的还是已经有表格,它都会失败。
SQL文件: http://pastebin.com/YjuDbyEK
NODE CODE:
var db = new mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'admin',
database : 'nps',
multipleStatements : true
});
//Check for the SQL upgrade file and stuff the contents through node-mysql
fs.exists(setting.NPS_loadFile, function(exists) {
if(exists){
fs.readFile(setting.NPS_loadFile, 'utf-8', function(err, sql) {
if (err) {
console.log("Couldn't read " + setting.NPS_loadFile, red(err));
}
else {
db.connect();
db.query(sql,function(e,r){
if(e == null){
console.log(cyan('Database structure upgraded.'));
}else{
sendError(ws,"<h1>SQL Error during upgrade</h1>"+e,e);
}
});
}
});
}else{
console.log("Couldn't read " + setting.NPS_loadFile, red(err));
}
});
答案 0 :(得分:0)
解决。我们在正在执行的文件中犯了一个错误。抱歉花时间。