MySQLメモ
備忘録。知ってる人はいまさらの話。
テーブルのコピーやAUTO_INCREMENTの操作など。
テーブルの定義コピー(testtableをコピーしてtesttable2の作成):
CREATE TABLE testtable2 LIKE testtable;
テーブルのデータコピー(testtableのデータをtesttable2にコピー):
INSERT INTO testtable2 SELECT * FROM testtable;
テーブル名のリネーム(testtableをtesttable2にリネーム):
RENAME TABLE testtable TO testtable2;
カンマつながりで複数指定可能、同一のファイルシステムならスワップ可能
ALTER TABLEを使用する方法もあるらしい
カラムのデータ型変更(testtableのcolをdoubleにしたい):
ALTER TABLE testtable MODIFY col DOUBLE;
今回は上位互換(?)の型(int→double)にしたので何も言われなかったけど、
varchar→intとかだとエラーが出る?default指定された値が入る?未確認
AUTO_INCREMENTの値確認(testtable):
SHOW TABLE STATUS LIKE 'testtable';
AUTO_INCREMENTの値変更(testtableのAUTO_INCREMENTを3にしたい):
ALTER TABLE testtable AUTO_INCREMENT = 3;