sequelize.js - Sequelize:如果插入包含不在数据库中的字段的记录会发生什么
问题描述
如果您尝试使用不在数据库模型中的字段插入记录,会发生什么情况?
例如:
const User = db.define('user', {
firstName: Sequelize.STRING,
lastName: Sequelize.STRING
});
User.sync();
let firstUser = User.build(
firstName: 'Foo',
lastName: 'Bar',
baz: 'qux' // not a defined field
);
firstUser.save();
怎么了?
- 是否被
baz
忽略? - 这会引发错误吗?
- 是否有任何类型的日志记录表明尝试了附加字段?
解决方案
我发现了什么:
- Sequelize 忽略附加字段。
- 属于模型的所有字段都被保存。
- 不会发生特殊的日志记录。关联的INSERT语句包括已识别的(在本例中为
firstName
和lastName
)和默认字段。
推荐阅读
- python - 数据框列和索引的组合
- javascript - 标记每个用户的移位时钟干扰
- javascript - React - 无法读取用户名/密码的状态
- c++ - 与任何类型的函数的接口
- java - 由于 InputStream.read(byte[] b) 是一种缓冲读取方法,它是否共享 BufferedInputStream 的效率?
- spring-integration - Spring Integration TCP Inbound Adapter 客户端断开连接问题
- bootstrap-4 - 背景和文本颜色导航栏 Blazor
- arrays - 访问 VBA 函数中的单个数组元素
- python-3.x - mplfinance KeyError:'打开'
- r - 使用 R 将 Postgres bytea 列(包含图像)解码为二进制格式