2016-03-15 73 views
0

我試圖將數據導入到heroku中的postgres數據庫。我能夠正確的模式上傳到Heroku的使用命令:Ruby on rails將本地csv數據加載到heroku

heroku pg:psql -a [app name] < db/structure.sql 

所以現在當我運行的Heroku PG:PSQL並連接到我的數據庫,我可以運行:

\dt 

並列出所有我想要的表格。但是,僅上載模式,而不是實際數據。我已經看了很多不同的方式將數據庫上傳到heroku,但一直無法工作。我想知道是否有一種簡單的方法將本地csv數據導入到heroku中。在當地,我可以運行:

sqlite3 development.sqlite3 
.mode csv 
.import [table name] [filename] 

而且它導入我想要的數據。有沒有類似的方式來做到這一點heroku數據庫?我知道heroku使用postgres而不是sqlite3,但由於我能夠輕鬆加載模式,我認爲可能有一種簡單的方式來上傳數據。這是我第一次嘗試發佈的rails項目,所以任何指導將不勝感激! 謝謝!

回答

0

上傳CSV到的Heroku和運行

COPY zip_codes FROM '/path/to/your_file.csv' DELIMITER ',' CSV; 

在PG殼

https://gist.github.com/jboesch/5605747Importing csv to heroku postgres你如何能做到這

+0

感謝您的反饋!但是,當我運行此代碼時,我收到錯誤:錯誤:必須是超級用戶才能複製到文件或從文件複製。我不確定爲什麼我不會成爲超級用戶,因爲我只是從我的電腦本地工作。有任何想法嗎?我試過「alter user superuser」,但它給了我一個錯誤,說「必須是超級用戶才能改變超級用戶」 – adub

+0

如果你不能將你的用戶設置爲超級用戶,請嘗試[this gem](https:// github的.com/diogob/postgres的拷貝) –