1
我正在使用Sequelize,并试图在我的用户列中插入一行。但是,我不断收到以下错误:未处理的拒绝SequelizeDatabaseError
Unhandled rejection SequelizeDatabaseError: Invalid object name 'User'.
我正在连接到MSSQL服务器。我知道我有正确的基本连接,因为我可以通过sequelize.query运行sequelize的纯查询而没有问题。我的怀疑是我没有正确地指定模式或数据库。
我的模型定义:
var user = sequelize.define("User", {
ID: {
\t \t type: Sequelize.INTEGER,
\t \t unique: true,
\t \t autoIncrement: true
\t },
\t FirstName: {
\t \t type: Sequelize.STRING
\t },
\t LastName: {
\t \t type: Sequelize.STRING
\t },
\t CreateDate: {
\t \t type: Sequelize.DATE
\t },
\t UpdateDate: {
\t \t type: Sequelize.DATE
\t }
},{
\t tableName: 'User',
\t timestamps: false,
\t freezeTableName: true
});
我试图使用模型来创建/插入一行到我的预先存在的数据库。
User.schema('Core');
User.create({ ID: '1', FirstName: 'Bobert', LastName: 'Jones'}).then(function(user) {
\t \t console.log(user.get({
\t \t \t plain: true
\t \t }))
\t });
当我用Sequelize的纯SQL来做到这一点我确实有包括架构又名“插入Core.User”。我没有正确指定模式?我试图在dialectOptions之前添加“schema:'Core'”,将它添加到我的初始连接定义中。
这对我有效!真正的关键是将模式放在“定义”中。我仍然有点不确定为什么我以前的设置不起作用,但我很高兴有一些操作。至少在这种情况下。 – OrwellHindenberg