首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ruby on Rails:如何使用迁移向现有列添加非空约束?

Ruby on Rails:如何使用迁移向现有列添加非空约束?
EN

Stack Overflow用户
提问于 2012-02-15 08:13:49
回答 4查看 57.1K关注 0票数 139

在我的Rails (3.2)应用程序中,我的数据库中有一堆表,但我忘记添加一些非空约束。我已经用谷歌搜索过了,但我找不到如何编写将not null添加到现有列的迁移。

蒂娅。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-02-15 08:25:06

对于Rails 4+,nates' answer (使用change_column_null)更好。

在Rails 4之前,试试change_column

票数 96
EN

Stack Overflow用户

发布于 2013-11-28 08:24:17

您也可以使用change_column_null

代码语言:javascript
复制
change_column_null :table_name, :column_name, false
票数 290
EN

Stack Overflow用户

发布于 2016-05-06 22:03:14

1)第一:添加有缺省值的列

2)然后:移除默认值

代码语言:javascript
复制
add_column :orders, :items, :integer, null: false, default: 0
change_column :orders, :items, :integer, default: nil
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9286176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档