- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQL5.1で varchar(100)のものを varchar()
MySQL varchar(100)をvarchar(90)に変更する方法
このQ&Aのポイント
- MySQL5.1でvarchar(100)のカラムをvarchar(90)に変更する方法を教えてください。
- 通常の手順ではalter tableを使用して変更しますが、他の項目も変更する場合はmysqldumpでSQLを吐き出し、CREATE文のvarchar(100)をvarchar(90)に変更してリストアする方法があります。
- この方法は他のデータベース(PostgreSQL, SQLServer, Oracle)でも使える手法ですか?どなたか具体的な手順を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>varchar(100)のものを varchar(90)にする予定 一発でやるなら以下のような処理でしょうね ALTER TABLE `テーブル` CHANGE `フィールドA` `フィールドA` VARCHAR( 90 ) NOT NULL ただ、既存のものを処理するなら移行トラブルを避けるために、 (1)新たなフィールドをつくる (2)update構文で古いフィールドの値を新しいフィールドにsetする (3)データが間違いないか確認する (4)古いフィールドを削除する という流れにした方がよいとおもいます。 >後ろの10バイトは無条件になくなっても構いません バイトじゃなくて文字数だと思いますが・・・