Rename tables (Database Engine)

Applies to: SQL Server 2016 (13.x) and later Azure SQL Database Azure SQL Managed Instance

This article covers how to rename a table in a database.

To rename a table in Azure Synapse Analytics or Parallel Data Warehouse, use RENAME OBJECT.

Limitations

Caution

Think carefully before you rename a table. If existing queries, views, user-defined functions, stored procedures, or programs refer to that table, the name modification makes these objects invalid.

Renaming a table doesn't automatically rename references to that table. You must manually modify any objects that reference the renamed table. For example, if you rename a table and that table is referenced in a trigger, you must modify the trigger to reflect the new table name. Use sys.sql_expression_dependencies to list dependencies on the table before renaming it.

Permissions

Requires ALTER permission on the table.

Use SQL Server Management Studio

Always use the latest version of SQL Server Management Studio (SSMS).

Rename a table

  1. In Object Explorer, right-click the table you want to rename and choose Design from the shortcut menu.

  2. From the View menu, choose Properties.

  3. In the field for the Name value in the Properties window, type a new name for the table.

  4. To cancel this action, press the ESC key before leaving this field.

  5. From the File menu, choose Save table name.

Rename a table

  1. In Object Explorer, connect to an instance of Database Engine.

  2. On the Standard bar, select New Query.

  3. The following example renames the SalesTerritory table to SalesTerr in the Sales schema. Copy and paste the following example into the query window and select Execute.

    USE AdventureWorks2022;
    GO
    EXEC sp_rename 'Sales.SalesTerritory', 'SalesTerr';
    

Important

The sp_rename syntax for @objname should include the schema of the old table name, but @newname does not include the schema name when setting the new table name.