Sdílet prostřednictvím


Přejmenování sloupců (databázový stroj)

platí pro: SQL Server 2016 (13.x) a novější verze Azure SQL DatabaseAzure SQL Managed InstanceSQL Database v Microsoft Fabric

Sloupec tabulky v SQL Serveru můžete přejmenovat pomocí aplikace SQL Server Management Studio nebo jazyka Transact-SQL.

Omezení

Přejmenování sloupce automaticky nepřejmenuje odkazy na tento sloupec. Je nutné upravit všechny objekty, které odkazují na přejmenovaný sloupec ručně. Pokud například přejmenujete sloupec tabulky a na tento sloupec se odkazuje v triggeru, musíte aktivační událost upravit tak, aby odrážela název nového sloupce. Pomocí sys.sql_expression_dependencies vypsat závislosti na objektu před jeho přejmenováním.

Přejmenování sloupce automaticky neaktualizuje metadata pro žádné objekty, které SELECT všechny sloupce (pomocí *) z této tabulky. Pokud například přejmenujete sloupec tabulky a na tento sloupec odkazuje jiné než schéma vázané zobrazení nebo funkce, která vybere všechny sloupce (pomocí *), metadata pro zobrazení nebo funkci budou nadále odrážet původní název sloupce. Aktualizujte metadata pomocí sp_refreshsqlmodule nebo sp_refreshview.

Dovolení

Vyžaduje oprávnění ALTER k objektu.

Použití aplikace SQL Server Management Studio

Přejmenování sloupce pomocí Průzkumníka objektů

  1. V Průzkumníku objektůpřipojte se k instanci databázového serveru.
  2. V Průzkumníku objektůklikněte pravým tlačítkem myši na tabulku, ve které chcete přejmenovat sloupce, a zvolte Přejmenovat.
  3. Zadejte nový název sloupce.

Přejmenování sloupce pomocí návrháře tabulky

  1. V Průzkumníku objektůklikněte pravým tlačítkem myši na tabulku, ve které chcete přejmenovat sloupce, a zvolte Návrh.
  2. V části Název sloupcevyberte název, který chcete změnit, a zadejte nový.
  3. V nabídce Soubor vyberte Uložit název tabulky.

Název sloupce můžete změnit také na kartě Vlastnosti sloupce. Vyberte sloupec, jehož název chcete změnit, a zadejte novou hodnotu pro Název.

Použijte Transact-SQL

Přejmenování sloupce

Následující příklad přejmenuje sloupec ErrorTime v tabulce dbo.ErrorLog na ErrorDateTime v databázi AdventureWorksLT.

EXEC sp_rename 'dbo.ErrorLog.ErrorTime', 'ErrorDateTime', 'COLUMN';

Všimněte si upozornění na výstup a ověřte, že jiné objekty nebo dotazy nejsou poškozené:

Caution: Changing any part of an object name could break scripts and stored procedures.

Další informace viz sp_rename.