ActiveRecordでIncorrect string value
ActiveRecordで絵文字をインサートする場合に、カラムが utf8mb4
なのにMysql2::Error: Incorrect string value
が発生。
障害
F, [2017-09-13T09:56:29.800518 #16145] FATAL -- : [ActiveRecord::StatementInvalid] Mysql2::Error: Incorrect string value: '\xF0\x9F\x8D\x9A' for column 'hoge' at row 1: INSERT INTO `talbe` (`column`) VALUES ('絵文字')
改善
config/database.yml
の encoding を utf8
→ utf8mb4
にする事で解消。
default: &default adapter: mysql2 - encoding: utf8 + encoding: utf8mb4 pool: 5