Ridenominazione di indiciRename Indexes

QUESTO ARGOMENTO SI APPLICA A: sìSQL Server (a partire dalla versione 2016)sìDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

In questo argomento si descrive come rinominare un indice in SQL Server 2017SQL Server 2017 utilizzando SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.This topic describes how to rename an index in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. La ridenominazione di un indice consiste nel sostituire il nome attuale dell'indice con il nuovo nome specificato dall'utente.Renaming an index replaces the current index name with the new name that you provide. Il nome specificato deve essere univoco all'interno della tabella o della vista.The specified name must be unique within the table or view. Ad esempio, due tabelle possono avere un indice denominato XPK_1, ma la stessa tabella non può contenere due indici denominati XPK_1.For example, two tables can have an index named XPK_1, but the same table cannot have two indexes named XPK_1. Non è possibile creare un indice con lo stesso nome di un indice disabilitato esistente.You cannot create an index with the same name as an existing disabled index. La ridenominazione di un indice non ne causa la ricompilazione.Renaming an index does not cause the index to be rebuilt.

Contenuto dell'argomentoIn This Topic

Prima di iniziare Before You Begin

Limitazioni e restrizioni Limitations and Restrictions

Quando si crea un vincolo PRIMARY KEY o UNIQUE in una tabella, viene automaticamente creato un indice per la tabella con lo stesso nome del vincolo.When you create a PRIMARY KEY or UNIQUE constraint on a table, an index with the same name as the constraint is automatically created for the table. Poiché i nomi di indice di una tabella devono essere univoci, nella tabella non è possibile creare o rinominare un indice in modo che abbia lo stesso nome di un vincolo PRIMARY KEY o UNIQUE esistente.Because index names must be unique within the table, you cannot create or rename an index to have the same name as an existing PRIMARY KEY or UNIQUE constraint on the table.

Sicurezza Security

Autorizzazioni Permissions

È richiesta l'autorizzazione ALTER per l'indice.Requires ALTER permission on the index.

Utilizzo di SQL Server Management Studio Using SQL Server Management Studio

Per rinominare un indice utilizzando Progettazione tabelleTo rename an index by using the Table Designer

  1. In Esplora oggetti fare clic sul segno più per espandere il database contenente la tabella in cui si desidera rinominare un indice.In Object Explorer, click the plus sign to expand the database that contains the table on which you want to rename an index.

  2. Fare clic sul segno più per espandere la cartella Tabelle .Click the plus sign to expand the Tables folder.

  3. Fare clic con il pulsante destro del mouse sulla tabella in cui si desidera rinominare un indice e selezionare Progetta.Right-click the table on which you want to rename an index and select Design.

  4. Scegliere Indici/chiavi nel menu Progettazione tabelle.On the Table Designer menu, click Indexes/Keys.

  5. Selezionare l'indice che si desidera rinominare nella casella di testo Indice o chiave primari/univoci selezionati .Select the index you want to rename in the Selected Primary/Unique Key or Index text box.

  6. Nella griglia fare clic su Nome e digitare un nuovo nome nella casella di testo.In the grid, click Name and type a new name into the text box.

  7. Scegliere Chiudi.Click Close.

  8. Nel menu File scegliere Salvatable_name.On the File menu, click Savetable_name.

Per rinominare un indice utilizzando Esplora oggettiTo rename an index by using Object Explorer

  1. In Esplora oggetti fare clic sul segno più per espandere il database contenente la tabella in cui si desidera rinominare un indice.In Object Explorer, click the plus sign to expand the database that contains the table on which you want to rename an index.

  2. Fare clic sul segno più per espandere la cartella Tabelle .Click the plus sign to expand the Tables folder.

  3. Fare clic sul segno più per espandere la tabella in cui si desidera rinominare un indice.Click the plus sign to expand the table on which you want to rename an index.

  4. Fare clic sul segno più per espandere la cartella Indici .Click the plus sign to expand the Indexes folder.

  5. Fare clic con il pulsante destro del mouse sull'indice che si desidera rinominare e scegliere Rinomina.Right-click the index you want to rename and select Rename.

  6. Digitare il nuovo nome dell'indice e premere INVIO.Type the index’s new name and press Enter.

Utilizzo di Transact-SQL Using Transact-SQL

Per rinominare un indiceTo rename an index

  1. In Esplora oggetticonnettersi a un'istanza del Motore di databaseDatabase Engine.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine.

  2. Sulla barra Standard fare clic su Nuova query.On the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute.

    USE AdventureWorks2012;  
    GO  
    --Renames the IX_ProductVendor_VendorID index on the Purchasing.ProductVendor table to IX_VendorID.   
    
    EXEC sp_rename N'Purchasing.ProductVendor.IX_ProductVendor_VendorID', N'IX_VendorID', N'INDEX';   
    GO  
    

    Per altre informazioni, vedere sp_rename (Transact-SQL).For more information, see sp_rename (Transact-SQL).