У меня есть следующее определение sequelize таблицы:sequelize таблицы без столбца «идентификатор»
AcademyModule = sequelize.define('academy_module', {
academy_id: DataTypes.INTEGER,
module_id: DataTypes.INTEGER,
module_module_type_id: DataTypes.INTEGER,
sort_number: DataTypes.INTEGER,
requirements_id: DataTypes.INTEGER
}, {
freezeTableName: true});
Как вы можете видеть, что это не id
столбца в этой таблице. Однако, когда я пытаюсь вставить все еще пытается следующий SQL:
INSERT INTO `academy_module` (`id`,`academy_id`,`module_id`,`sort_number`) VALUES (DEFAULT,'3',5,1);
Как я могу отключить функцию id
это явно имеет?
Что делать, если module_id и academy_id являются primaryKey? –
В таблице может быть только один первичный ключ, если только вы не создадите составной первичный ключ. Я не уверен, поддерживает ли Sequelize это. –
Не обращайте внимания на вышеизложенное, Sequelize поддерживает это. Просто добавьте 'primaryKey: true' в столбцы, которые вы хотите использовать в качестве первичного ключа. –