我最近在处理 heroku postgresql 数据库时遇到了一个问题。
我想更新某个用户的属性(让他成为管理员),所以我从 heroku 中提取了数据库以在本地更新他的属性并再次将其推回。
heroku db:pull
UPDATE users SET user_type = 'admin' WHERE name = 'thisuser'; //in postgres
heroku db:push
然后,出现了下面的问题。
!!! Caught Server Exception
HTTP CODE: 500
Taps Server Error: PGError: ERROR: time zone displacement out of range: "2013-01-21 12:00:00.000000+5895153600"
LINE 1: ....facebook.com/thisuser', 'facebook', '2374538475', '2013-01-2...
所以我再次运行以下命令以从错误中恢复。
heroku db:pull
heroku db:push
这导致从生产和开发中清除我的整个数据库。我有两个问题要问。
- 在 Heroku 环境中更新某些用户的属性的正确方法是什么?仅仅为了更新一个小对象的一个属性而拉动整个数据库似乎有点太多了。
- 为什么我的行为会导致数据库中的所有内容都被清除?
谢谢您的帮助。我很感激。