エラーは、行2(およびおそらく他の行)に12文字の長さのデータがあることを示しているため、データの損失を避けるためにalterコマンドを停止しました。
SUBSTRING()
を使用してテーブルを更新してみてください 列を短くします。データが失われるため、なぜこれを実行する必要があるのかは不明ですが、これによりデータが10文字の長さに切り捨てられます:
UPDATE merry_parents SET mobile=SUBSTRING(mobile, 1, 10)
次に、alterコマンドを実行します:
ALTER TABLE merry_parents CHANGE mobile mobile char(10).