为啥在使用 Knex.js/Objection 时我的所有数据都默认为 NULL?我根本没有通过 useNullAsDefault
Posted
技术标签:
【中文标题】为啥在使用 Knex.js/Objection 时我的所有数据都默认为 NULL?我根本没有通过 useNullAsDefault【英文标题】:Why is all my data defaulting to NULL, while using Knex.js/Objection? I'm not passing useNullAsDefault at all为什么在使用 Knex.js/Objection 时我的所有数据都默认为 NULL?我根本没有通过 useNullAsDefault 【发布时间】:2019-08-06 20:40:11 【问题描述】:我没有通过useNullAsDefault
,我什至尝试过使用useNullAsDefault: false
。
const knex = Knex(
client: 'pg',
connection: 'postgres://postgres:@localhost:5432/db_development',
);
【问题讨论】:
您的表数据库默认具有哪些实际值? 表中没有默认值,这就是他们默认为空的原因吗?如果 useNullAsDefault 无论如何发生,这不会让 useNullAsDefault 无用吗? 看起来像这样useNullAsDefault
只影响插入
我认为我的插入已经默认为 Null
【参考方案1】:
useNullAsDefault
仅影响您在一次插入中插入多行并且某些行缺少某些键的情况。
您需要使用默认值设置架构,以防止将 NULL 作为默认值插入。您不必添加该配置参数......提供它只是为了保持多年前创建的旧项目的向后兼容性。
【讨论】:
以上是关于为啥在使用 Knex.js/Objection 时我的所有数据都默认为 NULL?我根本没有通过 useNullAsDefault的主要内容,如果未能解决你的问题,请参考以下文章