Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript knex.js将null强制转换为NaN_Javascript_Sql_Node.js_Postgresql_Knex.js - Fatal编程技术网

Javascript knex.js将null强制转换为NaN

Javascript knex.js将null强制转换为NaN,javascript,sql,node.js,postgresql,knex.js,Javascript,Sql,Node.js,Postgresql,Knex.js,我有一个目标: var record = { foo: null, bar: 42 } 我想在表中插入一个: console.log(db('foos_and_bars').insert(record).toString()); // insert into "foos_and_bars" ("foo", "bar") values ('NaN', 42) 我的字段允许为空,所以我不希望knex执行此类操作 这是什么原因呢?我以前多次插入null-s,但没有实现这种情况 UPD:我添

我有一个目标:

var record = {
  foo: null,
  bar: 42
}
我想在表中插入一个:

console.log(db('foos_and_bars').insert(record).toString());
// insert into "foos_and_bars" ("foo", "bar") values ('NaN', 42)
我的字段允许为空,所以我不希望knex执行此类操作

这是什么原因呢?我以前多次插入null-s,但没有实现这种情况

UPD:我添加了
toString()
,只是为了确保查询的效果。正常运行时,我收到错误:

错误:将值($1,$2)插入到“foos_和_条”(“foo”,“bar”)中-整数“NaN”的输入语法无效


类型为nullable integer的字段?为什么?我假设knex将此字段识别为数字,并尝试转换空值。你用的是什么方言?@Thomas yep字段可以为空。我已经从postgres控制台插入了null,一切正常。我应该这样做,因为我有非常不可靠的数据提供程序,并且更喜欢在数据库中使用null而不是错误。@dvlsg我使用的是postgres。你知道现在有没有办法插入null-s?很遗憾,我不知道。看起来像博士后,除非我读错了地方。也许可以尝试向该函数添加一些日志记录/断点/任何东西,看看那里发生了什么?