Crea chiavi primarie
- 14/03/2017
- 2 minuti per leggere
-
- s
- M
- M
- W
- C
-
+7
Si applica a: SQL Server 2016 (13.x) e versioni successive Database SQL di Azure Istanza gestita di Azure SQL
È possibile definire una chiave primaria in SQL Server utilizzando SQL Server Management Studio o Transact-SQL. La creazione di una chiave primaria crea automaticamente un indice cluster univoco corrispondente o un indice non cluster se specificato come tale.
Prima di iniziare
Limitazioni e restrizioni
-
Una tabella può contenere solo un vincolo PRIMARY KEY.
-
Tutte le colonne definite allinterno di un vincolo PRIMARY KEY devono essere definite come NOT NULL. Se nullability non è specificato, tutte le colonne che partecipano a un vincolo PRIMARY KEY hanno la loro nullability impostata su NOT NULL.
Sicurezza
Autorizzazioni
La creazione di una nuova tabella con una chiave primaria richiede lautorizzazione CREATE TABLE nel database e lautorizzazione ALTER per lo schema in cui viene creata la tabella.
La creazione di una chiave primaria in una tabella esistente richiede lautorizzazione ALTER sulla tabella.
Uso di SQL Server Management Studio
Per creare una chiave primaria
- In Esplora oggetti, fare clic con il pulsante destro del si desidera aggiungere un vincolo univoco e fare clic su Progettazione.
- In Progettazione tabelle, fare clic sul selettore di riga per la colonna del database che si desidera definire come chiave primaria. Se desideri selezionare più colonne, tieni premuto il tasto CTRL mentre fai clic sui selettori di riga per le altre colonne.
- Fai clic con il pulsante destro del mouse sul selettore di riga per la colonna e seleziona Imposta chiave primaria.
Attenzione
Se si desidera ridefinire la chiave primaria, è necessario eliminare qualsiasi relazione con la chiave primaria esistente prima di poter creare la nuova chiave primaria. Un messaggio ti avviserà che le relazioni esistenti verranno automaticamente eliminate come parte di questo processo.
Una colonna chiave primaria è identificata da un simbolo di chiave primaria nel suo selettore di riga.
Se una chiave primaria è composta da più di una colonna, sono consentiti valori duplicati in una colonna, ma ogni combinazione di valori da tutte le colonne nella chiave primaria deve essere univoca.
Se si definisce un composto key, lordine delle colonne nella chiave primaria corrisponde allordine delle colonne come mostrato nella tabella. Tuttavia, è possibile modificare lordine delle colonne dopo aver creato la chiave primaria. Per ulteriori informazioni, consulta Modifica chiavi primarie.
Utilizzo di Transact-SQL
Per creare una chiave primaria in una tabella esistente
Lesempio seguente crea una chiave primaria nella colonna TransactionID
nel database AdventureWorks.
Per creare una chiave primaria in una nuova tabella
Lesempio seguente crea una tabella e definisce una chiave primaria nella colonna TransactionID
nel database AdventureWorks.
Per creare una chiave primaria con indice cluster in una nuova tabella
Lesempio seguente crea una tabella e definisce una chiave primaria nella colonna CustomerID
e un indice cluster su TransactionID
nel database AdventureWorks.
Vedi anche
- ALTER TABLE
- CREATE TABLE
- table_constraint