【发布时间】:2009-12-27 23:24:57
【问题描述】:
我一直在为我正在开发的数据库使用 sqlite3,我的应用程序已经变得足够复杂,以至于使用起来有点慢。
我刚刚切换到 MySQL 并运行 rake db:create ; rake db:migrate,但我的一次迁移失败并显示以下错误消息:
undefined method `alter_table` for #<ActiveRecord::ConnectionAdapters::MysqlAdapter:0xb6e6088c>
我用谷歌搜索了一下,什么也没找到。然后我检查了 API 并没有记录方法alter_table。但是,它确实适用于 sqlite3!
这是我的迁移:
class AddSettingsToUsers < ActiveRecord::Migration
def self.up
alter_table :users do |t|
t.text signature
...
end
end
...
end
这与 sqlite3 一样工作。
我要疯了吗?我是否只是发明了这种方法,而它恰好是一个未记录的功能,仅适用于受支持的数据库的子集?
有人对此有所了解吗?
【问题讨论】:
标签: mysql ruby-on-rails migration alter-table