mysql - NodeJS - 连接到本地 Mysql 数据库

标签 mysql database node.js sequelize.js

我正在尝试为我的 Node 应用程序创建一个 mysql 数据库连接,并运行 sequelize.authenticate().then(function(errors) { console.log(errors) }); 来测试是否连接成功了。记录到我的控制台的响应是正在执行(默认):SELECT 1+1 AS 结果未定义 未定义部分让我认为连接要么不起作用,要么没有找到任何数据库。我似乎无法弄清楚这一点。我认为通过 Sequel Pro 创建数据库并通过 Socket 连接到 localhost ,我可以使用相同的凭据来连接我的 Node 应用程序。我是否需要在我的应用程序中为数据库创建一个文件而不使用 Sequel Pro 数据库?

Controller 文件(在其中创建连接):

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;
}

database for localhost

最佳答案

试试这个,执行(默认):SELECT 1+1 AS 结果意味着一切正常

 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

关于mysql - NodeJS - 连接到本地 Mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33962259/

相关文章:

sql-server - 事件溯源 SQL Server 删除

node.js - 覆盖 eslint-plugin-mocha 规则上的错误消息

javascript - 尝试使用正文解析器从 Express v4 中的 POST 请求解析 JSON 对象

json - 通过 socket.io 传输文本文件的内容会生成 ArrayBuffer 对象

mysql - SQL通过许多相关的外键进行选择

php - 使用另一个表中的 ID 更新表中的记录

php - 如何使用新数据重新加载 php 文件中的某个部分?

mysql - 不小心清空了错误数据库中的表(使用 PHPMyAdmin for MySQL),是否要恢复数据?

mysql - 将自定义数据库导入 wordpress 并保留帖子 ID

python - 操作错误 : unable to open database file: sqlalchemy