2012-07-10 14 views
8

Come modificare il nome colonna predefinito in un nuovo nome.Modifica nome colonna in SQL Server 2008

eg: Column name is "Accounts" 
I want to change it to "A/c" 

alter cambiamento tabella EMP Conti .... [What next]

+3

Cosa in [la documentazione] (http://msdn.microsoft.com/en-us/library/ms190273.aspx) non si capisce? – Oded

risposta

13

È necessario utilizzare il comando sp_rename, o utilizzare Management Studio per farlo visivamente - assicuratevi di farlo in un periodo tranquillo, e assicurarsi che è stato fatto in pre -produzione prima con test!

Per inciso, vorrei stare lontano da A/C - il segno di barra è una divisione di significato speciale.

La documentazione per sp_rename è qui, l'esempio B è più appropriato. http://msdn.microsoft.com/en-us/library/ms188351.aspx

+0

sp_RENAME 't1.Account', 'Acc', 'Account' È giusto? – techie

+0

Dove t1 è la tabella e Account è la colonna, si esegue questa operazione per modificare la colonna in Acc. Assicurati di testarlo prima in non-prod, e fai un backup! EXEC sp_rename 't1.Accounts', 'Acc', 'COLUMN'; –

+0

A cosa serve questa parola chiave "COLUMN" alla fine? – techie

18

Lo script per rinominare una colonna:

sp_RENAME 'TableName.[OldColumnName]' , 'NewColumnName', 'COLUMN' 

(Si noti che non si uso sfugge a il secondo argomento, sorprendentemente.)

Lo script per rinominare qualsiasi oggetto (tabella, sp ecc):

sp_RENAME '[OldTableName]' , 'NewTableName' 

vedere here per ulteriori informazioni

+0

non c'è bisogno di alter istruzioni della tabella? – techie

+0

@techie - Hai seguito il link? Che cosa diceva? – Oded

+0

sì, ho visto quel link prima di postare qui, ma è la prima volta che lavoro su SQL server environment, quindi un po 'confuso di cose qui – techie

0

È possibile utilizzare sp_rename come:

sp_RENAME 'TableName.[OldColumnName]' , '[NewColumnName]', 'COLUMN' 

il tuo codice è simile a questo:

sp_RENAME 'table.Accounts','Acc','COLUMN' 
0

Qui è il codice per sp_rename

sp_RENAME 'emp.Accounts' , 'Acc' 

ho usato qualcosa di simile e ha funzionato

0
sp_rename 'table_name.accounts', 'A/C', 'column' 

questa domanda risolverà il problema.

0

Il comando per rinominare qualsiasi nome di colonna:

sp_RENAME 'TableName.[OldColumnName]' , 'NewColumnName' 

Funziona senza utilizzare il terzo argomento 'colonna' alla fine.

Problemi correlati