需要在数据库中更新日期时间列的数据类型,将其改为 TIMESTAMP。 在 Node.js 的 Sequelize 中,可以通过设置数据类型为 Sequelize.DATE,自动选择合适的时间戳类型。
示例代码:
定义 Sequelize 模型:
const { Sequelize, DataTypes } = require('sequelize'); const sequelize = new Sequelize('mysql://user:pass@localhost:3306/db');
const Event = sequelize.define('Event', { name: { type: DataTypes.STRING, allowNull: false }, date: { type: Sequelize.DATE, allowNull: false } });
使用 Sequelize 模型创建数据库表:
await Event.sync({ force: true });
添加事件:
await Event.create({ name: 'My Event', date: new Date() // 注意:这里将字符串传给数据库会导致此错误 });
查询事件:
const events = await Event.findAll();
console.log(events.map((x) => x.toJSON()));