我正在尝试为我的节点应用程序创建mysql数据库连接,并sequelize.authenticate().then(function(errors) { console.log(errors) });
测试连接是否有效。记录到我的控制台的响应是Executing (default): SELECT 1+1 AS result undefined
该undefined
部分使我认为连接不起作用或找不到任何数据库。我似乎无法弄清楚。我以为通过Sequel Pro创建数据库并localhost
通过Socket连接,我可以使用相同的凭据连接Node应用程序。我是否需要在我的应用程序中为数据库创建文件,而不使用Sequel Pro数据库?
控制器文件(创建连接的位置):
var Sequelize = require('sequelize');
var sequelize = new Sequelize('synotate', 'root', '', {
host:'localhost',
port:'3306',
dialect: 'mysql'
});
sequelize.authenticate().then(function(errors) { console.log(errors) });
var db = {}
db.Annotation = sequelize.import(__dirname + "/ann-model");
db.sequelize = sequelize;
db.Sequelize = Sequelize;
module.exports = db;
ann-model.js(正在定义我的表):
module.exports = function(sequelize, DataTypes) {
var Ann = sequelize.define('annotations', {
ann_id: {
type: DataTypes.INTEGER,
primaryKey: true
},
ann_date: DataTypes.DATE,
}, {
freezeTableName: true
});
return Ann;
}
试试这个,Executing (default): SELECT 1+1 AS result
意味着一切都还好
sequelize
.authenticate()
.then(function(err) {
if (!!err) {
console.log('Unable to connect to the database:', err)
} else {
console.log('Connection has been established successfully.')
}
});
但是我不知道你去哪里 undefined
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句