SQLでは、ほとんどのRDBMSで、ALTER TABLEを使用してテーブルの名前を変更できます。 ステートメント。既存のテーブルの定義を変更するために使用されるステートメントです。
一部のRDBMには、RENAMEも含まれています テーブルの名前を変更するためのステートメント。
ただし、SQL Serverを使用する場合は、sp_renameを使用する必要があります ストアドプロシージャ。
PostgreSQL、MySQL、MariaDB、SQLite、Oracle
ALTER TABLE ステートメントは、主要なRDBMS全体でテーブルの名前を変更するために最も広くサポートされている方法です。このステートメントを使用するときは、RENAMEを使用してください テーブルの名前を変更する句。
例:
ALTER TABLE t1 RENAME TO t2;
これにより、テーブルの名前がt1から変更されます。 t2へ 。
これは、PostgreSQL、MySQL、MariaDB、SQLite、OracleなどのほとんどのRDBMで機能するはずです。
ただし、この方法はSQLServerでは機能しません。
SQL Server
SQL Serverでは、sp_renameを使用する必要があります ストアドプロシージャ。
例:
EXEC sp_rename 't1', 't2'; 最初のテーブルをスキーマ名で修飾することもできます。その場合、次のようになります。
EXEC sp_rename 'dbo.t1', 't2';
この例では、dbo はスキーマ名ですが、該当するスキーマを使用する必要があります。
MySQLとMariaDB
ALTER TABLEに加えて メソッド、MySQLおよびMariaDBにもRENAME TABLEがあります ステートメント。
例:
RENAME TABLE
t1 TO t2,
t3 TO t4,
t5 TO t6; Oracle
ALTER TABLEに加えて ステートメント、OracleにはRENAMEがあります ステートメント。
例:
RENAME t1 TO t2; シャーディングされたテーブルまたは複製されたテーブルの名前を変更することはできないことに注意してください。