2012-07-10 31 views
8

Cómo cambiar el nombre predefinido de la columna a un nuevo nombre.Cambiar el nombre de la columna en SQL Server 2008

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

Cuentas alter cambio tabla emp .... [Lo siguiente]

+3

¿Qué en [la documentación] (http://msdn.microsoft.com/en-us/library/ms190273.aspx) no entiendes? – Oded

Respuesta

13

Es necesario utilizar el comando sp_rename, o utilizar Management Studio para hacerlo visualmente - asegúrese de que lo haces en un período de silencio, y asegúrese de que se ha hecho en pre -¡producción primero con pruebas!

Por cierto, me mantendría alejado de A/C - el signo de barra es división de significado especial.

La documentación para sp_rename está aquí, el ejemplo B es el más apropiado. http://msdn.microsoft.com/en-us/library/ms188351.aspx

+0

sp_RENAME 't1.Cuentas', 'Acc', 'Cuentas' ¿Es esto correcto? – techie

+0

Donde t1 es la tabla y Accounts es la columna, debe ejecutar esto para cambiar la columna a Acc. ¡Asegúrate de probarlo primero en non-prod, y haz una copia de seguridad! EXEC sp_rename 't1.Cuentas', 'Acc', 'COLUMNA'; –

+0

¿Para qué se utiliza esta palabra clave 'COLUMN' al final del día? – techie

18

La secuencia de comandos para cambiar el nombre de cualquier columna:

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

(Tenga en cuenta que no hace uso escapa en el segundo argumento, sorprendentemente.)

El script para cambiar el nombre de cualquier objeto (tabla, sp, etc.):

sp_RENAME '[OldTableName]' , 'NewTableName' 

ver here para más información

+0

¿no hay necesidad de modificar las instrucciones de la tabla? – techie

+0

@techie - ¿Has seguido el enlace? ¿Qué decía? – Oded

+0

sí, vi ese enlace antes de publicar aquí, pero es la primera vez que estoy trabajando en el entorno del servidor SQL, por lo que estoy un poco confundido cosas aquí – techie

0

Puede utilizar sp_rename como:

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

por ejemplo el código es así:

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

Este es el código para sp_rename

sp_RENAME 'emp.Accounts' , 'Acc' 

he usado algo similar y funcionó

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

esta consulta resolverá su problema.

0

El comando para cambiar el nombre de cualquier nombre de la columna:

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

Funciona sin utilizar la tercera argumento 'Columna' al final.

Cuestiones relacionadas