MySQLでテーブル名を変更するには?RENAME TABLEの使い方を解説
MySQLでテーブルの名前を変更したい場合は、RENAME TABLEコマンドを使用します。構文は以下のとおりです。
RENAME TABLE 旧テーブル名 TO 新テーブル名;
基本例
次の例では、「testing」というテーブル名を「test」に変更しています。
mysql> RENAME TABLE testing TO test; Query OK, 0 rows affected (0.17 sec)
リネーム後、旧テーブル名「testing」は存在しなくなるため、その名前で参照するとエラーが発生します。
mysql> SELECT * FROM testing; ERROR 1146 (42S02): Table 'query.testing' doesn't exist
一方、新しいテーブル名「test」に対してクエリを実行すると、データはそのまま引き継がれていることが確認できます。
mysql> SELECT * FROM test; +-----+---------+ | id1 | Name | +-----+---------+ | 1 | Harshit | | 2 | Lovkesh | | 3 | MOHIT | | 4 | MOHIT | +-----+---------+ 4 rows in set (0.02 sec)
補足:ALTER TABLEでも変更できる
同じ操作はALTER TABLE文でも実行できます。
ALTER TABLE 旧テーブル名 RENAME TO 新テーブル名;
複数のテーブルを一括で変更する
RENAME TABLEは、カンマ区切りで記述することで、複数のテーブル名を1つのステートメントでまとめて変更することも可能です。
RENAME TABLE t1 TO t2, t3 TO t4;
注意点
- リネームを実行すると元のテーブル名は使用できなくなるため、アプリケーションや既存SQL内のテーブル名の参照箇所も忘れずに更新しましょう。
- テーブル名の変更には適切な権限(ALTER権限およびDROP権限)が必要です。
- 同一データベース内でのリネームに加え、別データベースへの移動を兼ねた変更も可能です。
-
MySQLテーブルのカラム名を取得する方法【SHOW・DESCRIBE活用ガイド】
SHOWコマンドでカラム名を取得するMySQLでは、SHOWコマンドを使うことで、テーブルのカラム(列)名を簡単に確認できます。カラム名だけでなく、データ型やNULL許可、キー情報なども一緒に取得できるのが特徴です。基本構文show columns from テーブル名;サンプルテーブルの作成まず、動作確認用に「DemoTable」というテーブルを作成します。mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(
-
MySQLでテーブルの日付レコードを変更する方法|UPDATEとDATE_ADD()の使い方
MySQLで保存済みの日付データに年数を加算して変更したい場合、UPDATEコマンドとDATE_ADD()関数を組み合わせることで簡単に実現できます。ここでは、実際のSQLクエリ例を使いながら、日付レコードを変更する手順を順番に解説します。1. テーブルを作成するまず、日付型(date)のカラムを持つテーブルを作成します。mysql> create table DemoTable1984 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec)2. レコードを挿入する次に、INSERTコマンドを使ってテ