我正在尝试将列“isGroup”的值更改为值“public”。
我创建了一个迁移:
Post.connection.execute("update Posts set isgroup='public'")
但是,出现以下错误:
PGError: ERROR: column "isgroup" of relation "posts" does not exist
不幸的是,我在运行connection.execute迁移的同时运行了创建迁移的列。但是,“isGroup”列确实存在于Heroku上,因此很奇怪该列未显示为出现。
有什么建议吗?
最佳答案
如果您确定isGroup
列存在,则应将其引用为:
UPDATE posts SET "isGroup" = 'public'
请注意,PostgreSQL默认情况下将所有未加引号的名称折叠成小写。
为了避免这种混淆和引用的必要性,您可能需要使用
isGroup
将isgroup
重命名为ALTER TABLE ... RENAME COLUMN ...
。关于ruby-on-rails-3 - PGError:错误:关系列不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14189254/