Mysql2が無効な日付(2012-00-25など)を取得しようとすると、問題が発生します。
例えば:
'mysql2'が必要
db = Mysql2 :: Client.new(....)
結果=db.query(query)
results.each do | row |
..
..
終わり
最初のレコードに無効な日付がある場合、mysql2はエラーをスローし、その時点で停止します。
どうすればそれを正しく処理できますか(エラーをキャッチして間違ったデータを回復するため)?
ソースデータを制御できません。
前もって感謝します、
私の解決策:
:cast => falseを追加し、日付列を解析する問題を解決しました
db.query(query、:cast => false)
results.each do | row |
..
始める
Date.parse(time)
救援
# if date is wrong then set the date field
time = "1900-01-01 00:00:00"
終わり
..
終わり