2012-05-31 12 views
13
ALTER TABLE [TEMP] 
SP_RENAME '[TEMP].[Day]', 'GT', 'COLUMN' 

sto cercando di rinominare Day a GT e sto ottenendo l'erroreRinominare una colonna: sintassi errata vicino a "SP_RENAME".?

la sintassi non corretta in prossimità 'sp_rename'

SQL Server Management Studio, dice l'errore è in SP_RENAME

NOTA: Sono aperto ad altre opzioni oltre a sp_rename

+0

Non è possibile modificare il nome di una colonna utilizzando ALTER TABLE. –

risposta

27

SP_RENAME non fa parte dell'istruzione ALTER TABLE. Si tratta di una procedura di sistema memorizzato e quindi dovrebbe essere richiamato tramite l'istruzione EXEC/EXECUTE, in questo modo:

exec SP_RENAME '[TEMP].[Day]', 'GT', 'COLUMN' 

(senza il alter table temp bit)

+4

Aggiungo anche l'EXEC lì, nel caso l'OP lo copi in un batch e non è la prima dichiarazione. –

+0

@ericf: dovrebbe funzionare. Vedi [questo esempio] (http://sqlfiddle.com/#!3/00034/2) –

+1

@ericf proprio dove lo ha messo il juergen, e per favore non dire mai "non funziona" - cosa significa "non funziona" " significare? Hai ricevuto un messaggio di errore? Se è così, copialo e incollalo in modo da avere qualche idea di cosa intendi. –

0

È necessario avviare ogni sp_rename con un'EXEC

+0

Questo è stato già affermato un anno prima. –

Problemi correlati