Si simplemente deseo cambiar el nombre de una columna (no cambiar su tipo o restricciones, solo su nombre) en una base de datos SQL usando SQL, ¿cómo lo hago? ¿O acaso no es posible?
Esto es para cualquier base de datos que afirme ser compatible con SQL, simplemente estoy buscando una consulta específica de SQL que funcione independientemente de la implementación real de la base de datos.
sql
sql-server
database
rename
MetroidFan2002
fuente
fuente
Respuestas:
En PostgreSQL (y muchos otros RDBMS), puede hacerlo con una
ALTER TABLE
declaración regular :fuente
sp_rename
según la respuesta de Galwegian: stackoverflow.com/a/174586/834431Específicamente para SQL Server, use
sp_rename
fuente
En MySQL, la sintaxis es
ALTER TABLE ... CHANGE
:Tenga en cuenta que no puede simplemente cambiar el nombre y dejar el tipo y las restricciones como están; debe volver a escribir el tipo de datos y las restricciones después del nuevo nombre de la columna.
fuente
RENAME
sintaxis. Cambiar el nombre de una columna en MySQLDesafortunadamente, para una solución independiente de la base de datos, necesitará saber todo sobre la columna. Si se usa en otras tablas como clave externa, también será necesario modificarlas.
Para los casos más simples (sin restricciones, activadores, índices o claves), se necesitarán las 3 líneas anteriores. Para algo más complicado, puede resultar muy complicado a medida que completa las partes que faltan.
Sin embargo, como se mencionó anteriormente, existen métodos específicos de base de datos más simples si sabe qué base de datos necesita modificar antes de tiempo.
fuente
Creo que esta es la forma más sencilla de cambiar el nombre de una columna.
fuente
En Informix, puede utilizar:
Esto se implementó antes de que el estándar SQL abordara el problema, si se aborda en el estándar SQL. Mi copia del estándar SQL 9075: 2003 no lo muestra como estándar (entre otras cosas, RENAME no es una de las palabras clave). No sé si está realmente en SQL 9075: 2008.
fuente
RENAME COLUMN TableName.OldName TO NewName;
www-01.ibm.com/support/knowledgecenter/SSGU8G_11.50.0/…En el servidor sql puede usar
o
fuente
Puede usar el siguiente comando para cambiar el nombre de la columna de cualquier tabla en SQL Server:
fuente
ALTER TABLE es SQL estándar. Pero no está completamente implementado en muchos sistemas de bases de datos.
fuente
El estándar sería
ALTER TABLE
, pero eso no es necesariamente compatible con todos los DBMS que probablemente encuentre, por lo que si está buscando una sintaxis que lo abarque todo, es posible que no tenga suerte.fuente
Alternativamente a
SQL
, puede hacerlo en Microsoft SQL Server Management Studio, desde el Panel de diseño de la tabla.Primer camino
Haga doble clic lento en la columna. El nombre de la columna se convertirá en un cuadro de texto editable.
Segunda vía
Tercera vía
Tabla >> RightClick >> Diseño
fuente