0

Rails アプリケーションを古い MySQL v4.1.20 サーバーに接続する機会はありますか?

rails db 

コマンドは正常に動作しますが、アプリケーションを実行できません。

で新しいアプリを生成すると

rails new app_name -d mysql

database.yml ファイルに次のように表示されます。

MySQL。バージョン 4.1 および 5.0 をお勧めします。

これは、私がそれを使用できることを意味するはずです。ただし、Rails Active Record は MySQL v.5.0.2 以降の機能を使用します ( https://github.com/rails/rails/blob/4-0-stable/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb ):

# Make MySQL reject illegal values rather than truncating or blanking them, see
# http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html#sqlmode_strict_all_tables
# If the user has provided another value for sql_mode, don't replace it.

    if strict_mode? && !variables.has_key?(:sql_mode)
      variables[:sql_mode] = 'STRICT_ALL_TABLES'
    end

残念ながら、私は古いバージョンの MySQL サーバーとは何の関係もありません。私はそれを使用する必要があります。

4

1 に答える 1

0

追加する

strict: false

database.yml のコネクタ設定に変更すると問題が解決しました。

于 2014-04-11T20:55:56.773 に答える