带有Sequelize的Node.js上的SQL Server 2008

我是新来的 !

我试图做一个MS SQL Server2008与sequ​​elize查询,但我得到这个错误:

未处理的拒绝SequelizeDatabaseError:无效的列名称“id”。 在Request.userCallback(C:\ xampp \ htdocs \ Lavori)的Query.formatError(C:\ xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_modules \ s equelize \ lib \ dialects \ mssql \ query.js:217:10) (C:\ xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_modules \ teious \ lib \ request)中的\ Bit_Sense \ API_BS \ node_module s \ sequelize \ lib \ dialects \ mssql \ query.js:66:25) Connection.js:30:27)在Connection.STATE.SENT_CLIENT_REQUEST.events.message(C:\ xampp \ htdocs \ Lavo ri \ Bit_Sense \ API_BS \ node_modules \ tedious \ lib \ connection.js:283:29)Connection.dispatchEvent (C:\ xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_mo dules \ tedious \ lib \ connection.js:752:59)。 (C:\ xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_modul es \ tedious \ lib \ connection.js:685:22)在MessageIO.emit(events.js:104:17) xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_modules \ tedious \ lib \ message-io.js:58:21)。 (_stream_readable.js:)在Socket.emit(events.js:107:17)上运行(C:\ xampp \ htdocs \ Lavori \ Bit_Sense \ API_BS \ node_modules \ tedious \ lib \ message-io.js:3:59)在TCP.onread(net.js:538:20)处的Socket.Readable.push(_stream_readable.js:126:10)

我已经安装了这个模块: – sequelize; – 单调乏味

我没有问题的连接,只有这个查询:

db.KEY_ARTI.findAll({ where:{ CACODICE: cacodice } }).then(function(data) { res.send(data); }); 

我能做什么 ? 我没有任何名为id的专栏

这是我的桌子:

 var Sequelize = require('sequelize'); var settings = global.settings.databases.DATABASE; var errors = global.errors; var utilities = global.utilities; var sequelize = new Sequelize(settings.schema, settings.username, settings.password, { dialect: settings.dialect, host: settings.host, port: settings.port, /* BISOGNA USARE LA DYNAMIC PORT */ logging: function (str) { if(settings.log) console.log("querylog: "+str.replace("Executing (default):", "") ); }, }); sequelize.authenticate().then(function(err) { if (!!err) { console.log('Database '+settings.schema+' Connection Error:', err) } else { console.log('Database '+settings.schema+' Connected') } }); exports.sequelize = sequelize; /* * KEY_ARTI */ exports.KEY_ARTI = sequelize.define('KEY_ARTI', { CACODICE: Sequelize.CHAR(20), CADESART: Sequelize.CHAR(40), } 

默认情况下,sequelize会添加一个名为id的主键,如果你自己不做任何事情。

 sequelize.define('model', {}); // Adds an id key sequelize.define('model', { name: { primaryKey: true type: Sequelize.STRING } }); // Doesn't add an id, because you already marked another column as primary key 

也可以有没有主键的模型,但我不会推荐这个