无法转储“data”表,因为出现以下标准错误

3
我的Rails应用程序有一个远程数据库,在那里我独立于应用程序创建和存储表格,它是“无模型”的,我不需要或不想为这些表格使用模型或ORM。为了访问数据,我使用一个简单的ActiveRecord :: Base.connection.execute(query)命令。
我的schema.rb有很多被注释掉的消息:
# Could not dump table "geographic_data" because of following StandardError
#   Unknown type 'geometry(MultiLineString,4326)' for column 'geom'

我的问题/疑惑:

如果我安装ActiveRecord PostGIS适配器,是否会清除我在这些非模型表中已经拥有的所有数据?这是可能发生的情况吗?


如果您不小心将列名和类型弄反了,例如add_column :people, :string, :first_name而不是add_column :people, :first_name, :string,就会发生这种情况。 - Kris
1个回答

5
在理论上,这不应该发生,因为您只需运行rake db:schema:dump即可获取所有模式,但为了安全起见,请在staging/development环境中进行测试。如果您不需要该适配器用于除模式转储之外的任何其他操作,或者它不能完全覆盖(例如,如果您有一些触发器/存储函数等),则可以在config/application.rb中切换到使用基于sql格式的rails模式:
config.active_record.schema_format = :sql

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接