行く記憶の流れは絶えずして

戻ってこないのでメモするところ

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;