Domanda

Attualmente sto mettendo insieme alcune modifiche nel nostro modello di dati che includono la modifica di una colonna (che sembra essere parte della chiave primaria) in modo che non sia più un'identità. C'è un modo per fare questo a meno di rimuovere e ricreare l'intera colonna o tabella? Il codice generato automaticamente da SSMS fa proprio questo, ma mi chiedevo se ci fosse forse una soluzione più semplice.

È stato utile?

Soluzione

Non puoi rimuovere la proprietà Identity di una colonna senza rilasciarla.

I possibili passaggi della soluzione sono:

(a) Aggiungi una nuova colonna

(b) Aggiorna la colonna con il valore della colonna identità

(c) Rimuovi la colonna identità.

Alter Table Tablename Add newColumnname int

Update Table set newColumnname =IdentityColumn

Alter Table TableName Drop IdentityColumnName

Nota: se per il momento stai parlando di disattivare la proprietà dell'identità, seleziona Imposta comando IDENTITY_INSERT TableName ON

Ha senso?

Saluti, John

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top