由于seeds.rb
在Ruby中,我猜测如果我想要效果
insert into foo values (hoo: "ioo", koo: null);
我应该做点像
Foo.create(hoo: "ioo", koo: nil)
在这种情况下,Ruby值nil
是否映射到SQL值null
?我知道
Foo.create(hoo: "ioo")
将创建koo
NULL
的行,但在这种情况下我的seeds.rb
行是在快速n-dirty SQL查询中连接在一起的字符串,所以简单地跳过具有空值的列可能比让节点模块better-sqlite3
停止吐出版本不匹配消息需要更多精力。我想我可以耙掉这些种子并测试我的nil
- > NULL
假设,而不是在这里询问,但我已经足够新了,因为我对于破坏事物我很偏执
答案 0 :(得分:1)
是的,Foo.create(hoo: "ioo", koo: nil)
会将koo
列设置为NULL。
通过运行seeds.rb
并查看创建的内容,您无法真正破解任何内容。如果它不是您想要的,请将其删除并重试!
答案 1 :(得分:0)
是的,我所知道的所有SQL宝石都将Ruby nil
转换为SQL NULL
。