gpt4 book ai didi

mysql - 在 Rails 架构/事件记录中使用 "BIGINT UNSIGNED"

转载 作者:行者123 更新时间:2023-11-29 01:05:30 25 4
gpt4 key购买 nike

我有一个 Rails 应用程序需要能够将文件的指纹保存在 mysql 数据库中。这些指纹是填满 BIGINT 的完整范围甚至需要 UNSIGNED 的额外空间的数字。我不能使用“VARCHAR”,因为稍后需要在数据库端执行数学运算。

所以我像这样创建了我的表列:

t.column :fingerprint, 'BIGINT UNSIGNED'

像魅力一样工作。

但是在运行的时候

rake db:reset

我总是得到一个 schema.rb,其中包括:

t.integer  "fingerprint", :limit => 8

手动编辑为“BIGINT UNSIGNED”有效,但当我再次运行“rake db:reset”时立即被替换。

有什么方法可以在重置之间保持这种状态?

最佳答案

解决方案非常简单。如果您将应用程序的模式格式设置为 :sql,一切都应该按预期工作。

编辑您的 config/application.rb 并进行以下更改/添加:


配置.active_record.schema_format = :sql

您可以在 Rails 指南中找到更详细的解释:http://guides.rubyonrails.org/migrations.html#types-of-schema-dumps

关于mysql - 在 Rails 架构/事件记录中使用 "BIGINT UNSIGNED",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20188681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com