Database
 sql >> Datenbank >  >> RDS >> Database

So benennen Sie eine Spalte in SQL um

Dieser Artikel enthält ein kurzes Beispiel für das Umbenennen einer Tabelle in SQL.

Bei den meisten großen RDBMSs können Sie eine Spalte mit ALTER TABLE umbenennen Erklärung. SQL Server ist eine Ausnahme.

Beispiel (die meisten RDBMS)

Bei den meisten großen RDBMSs können Sie eine Spalte wie folgt umbenennen.

Syntax:

ALTER TABLE table_name 
RENAME COLUMN old_column_name TO new_column_name;

Beispiel:

ALTER TABLE Products 
RENAME COLUMN ProdDesc TO ProductDescription;

Hier haben wir eine Spalte in Products umbenannt Tabelle aus ProdDesc zu ProductDescription .

Das sollte in RDBMS funktionieren, einschließlich PostgreSQL, Oracle, SQLite, MySQL (beginnend mit 8.0) und MariaDB (beginnend mit 10.5.2+).

Frühere Versionen von MySQL und MariaDB

MySQL und MariaDB haben RENAME COLUMN nicht immer unterstützt Syntax.

In MySQL vor Version 8.0 und MariaDB vor 10.5.2+ müssen Sie CHANGE COLUMN verwenden Syntax statt.

Syntax:

ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name datatype;

Beispiel:

ALTER TABLE Products 
CHANGE COLUMN ProdDesc ProductDescription varchar(500);

Beachten Sie, dass diese Syntax erfordert, dass Sie die Spaltendefinition neu angeben, auch wenn Sie sie nur umbenennen.

Diese Syntax wird noch in späteren Versionen von MySQL und MariaDB unterstützt, obwohl sie jetzt auch die vorherige RENAME COLUMN haben Syntax, die es einfacher macht.

SQL-Server

In SQL Server müssen Sie den sp_rename verwenden gespeicherte Prozedur zum Umbenennen einer Spalte.

Syntax:

sp_rename 'schema_name.table_name.old_column_name', 'new_column_name', 'COLUMN';

Sie haben auch die Möglichkeit, die Parameternamen anzugeben:

sp_rename 
    [ @objname = ] 'object_name' , 
    [ @newname = ] 'new_name'   
    [ , [ @objtype = ] 'object_type' ]

Beispiel:

EXEC sp_rename 'dbo.Products.ProdDesc', 'ProductDescription', 'COLUMN';

Oder:

EXEC sp_rename 
    @objname = 'dbo.Products.ProdDesc', 
    @newname = 'ProductDescription', 
    @objtype = 'COLUMN';