Тази статия предоставя бърз пример за преименуване на таблица в SQL.
Повечето от основните RDBMS ви позволяват да преименувате колона с ALTER TABLE изявление. SQL Server е изключение.
Пример (повечето RDBMS)
Повечето от основните RDBMS ви позволяват да преименувате колона, както следва.
Синтаксис:
ALTER TABLE table_name
RENAME COLUMN old_column_name TO new_column_name; Пример:
ALTER TABLE Products
RENAME COLUMN ProdDesc TO ProductDescription;
Тук преименувахме колона в Products таблица от ProdDesc към ProductDescription .
Това трябва да работи в RDBMS, включително PostgreSQL, Oracle, SQLite, MySQL (започвайки с 8.0) и MariaDB (започвайки с 10.5.2+).
По-ранни версии на MySQL и MariaDB
MySQL и MariaDB не винаги поддържаха RENAME COLUMN синтаксис.
В MySQL преди версия 8.0 и MariaDB преди 10.5.2+, ще трябва да използвате CHANGE COLUMN вместо синтаксис.
Синтаксис:
ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name datatype; Пример:
ALTER TABLE Products
CHANGE COLUMN ProdDesc ProductDescription varchar(500); Имайте предвид, че този синтаксис изисква да посочите повторно дефиницията на колоната, дори ако само я преименувате.
Този синтаксис все още се поддържа в по-късни версии на MySQL и MariaDB, въпреки че вече имат и предишния RENAME COLUMN синтаксис, който го улеснява.
SQL сървър
В SQL Server ще трябва да използвате sp_rename съхранена процедура за преименуване на колона.
Синтаксис:
sp_rename 'schema_name.table_name.old_column_name', 'new_column_name', 'COLUMN'; Освен това имате възможност да предоставите имената на параметрите:
sp_rename
[ @objname = ] 'object_name' ,
[ @newname = ] 'new_name'
[ , [ @objtype = ] 'object_type' ] Пример:
EXEC sp_rename 'dbo.Products.ProdDesc', 'ProductDescription', 'COLUMN'; Или:
EXEC sp_rename
@objname = 'dbo.Products.ProdDesc',
@newname = 'ProductDescription',
@objtype = 'COLUMN';