簡體   English   中英

如何將MySQL中的布爾值字段遷移到Heroku中的PostgreSQL?

[英]How to migrate a boolean field in MySQL to PostgreSQL in Heroku?

我有一個在本地計算機上運行MySQL的應用程序。 我在Rails中定義了一個布爾值字段,在MySQL中用0或1表示。

我現在正在嘗試遷移到使用PostgreSQL的Heroku。 將代碼和數據庫推送到Heroku后,該應用程序將無法運行。

沒有錯誤消息。

ActiveRecord::StatementInvalid (PGError: ERROR:  operator does not exist: boolean = integer

我該如何解決?

謝謝大家

這是因為MySQL使用TinyInt(1)來存儲布爾屬性,而PostgreSQL具有本機布爾類型。

最好使用類似

https://github.com/maxlapshin/mysql2postgres

負責處理這些問題。

設置本地postgres數據庫。 從MySQL遷移到本地Postgres DB。 然后使用水龍頭將本地Postgres數據庫推送到Heroku。

另外,請確保您未在​​代碼中的任何地方使用“ y”或“ n”,因為這些值特定於MySQL

更新:在執行上述任何操作之前,請查看此http://devcenter.heroku.com/articles/database#common_issues_migrating_to_postgresql

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM