Reputation: 319
I am very new to using sequelize. I am running a node.js project created using sequelize cli and trying to run a raw query as below within a "put" express route of my application but keep getting and error:
Sequelize.query is not a function
The query that i am trying to run is
UPDATE package_values pk INNER JOIN packages p ON pk.package_id = p.id SET pk.value = true WHERE pk.feature_id = 2 AND (p.based_on = 2 OR pk.package_id = 2)
Any help would be much appreciated as to how I can go about getting this query to work with my project.
Thanks.
Upvotes: 0
Views: 952
Reputation: 37343
You have to call query
function on an instance of Sequelize
like this :
var sequelize = new Sequelize("logiqua", "root", "", {
host: "localhost",
dialect: "mysql",
logging: function () { },
pool: {
max: 5,
min: 0,
idle: 10000
},
});
// raw query
sequelize.query("UPDATE package_values pk INNER JOIN packages p ON pk.package_id = p.id SET pk.value = true WHERE pk.feature_id = 2 AND (p.based_on = 2 OR pk.package_id = 2)",
{ type: sequelizeLogista.QueryTypes.UPDATE }).then(()=>{
console.log("done")
});
Upvotes: 2