タイトルの通り、DBがMySQLの状態でダミーデータを作成するeccube:fixtures:generateコマンドを実行すると文字数オーバーだったり、数値がマイナスだったりで失敗する。
SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column ‘file_name’
該当カラムがvarchara(255)のパターン。
dtb_productのnameと、dtb_product_imageのfile_nameで発生する。カラムの文字数を増やせば処理は進む。
SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column ‘payment_total’
dtb_orderのtotalやpayment_totalにマイナスの値を指定しているパターン。正数のみを表すunsignedを取ってあげればよいけど、あくまで処理を最後まで進めるための処置。
コマンドの方を修正した方が正しいとは思う。
これで最後まで行くかなぁと思ったら、
Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2097160 bytes)
・・・PHPのメモリーサイズは多めにね。
最後まで行かなかったけど諸々やり直す気力が出ないのと、ダミーデーターはそれなりの数入ったので調査終了して、メモを残す。
Please give us your valuable comment