Estoy tratando de cambiar una columna de varchar (50) a nvarchar (200). ¿Cuál es el comando SQL para alterar esta tabla?¿Cómo se cambia el tipo de datos de una columna en MS SQL?
Respuesta
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
EDIT Como se ha señalado NULL/NOT NULL se debería haber especificado, ver Rob's answer también.
Utilice la instrucción Alter table.
Alter table TableName Alter Column ColumnName nvarchar(100)
No olvide nullability.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
¿Cuál es el problema con la capacidad de nulidad? Si no quiero cambiarlo, ¿cuál es el beneficio al configurarlo de nuevo? –
^Pasará a NULL por defecto después de que la instrucción alter table termine de ejecutarse sin definir explícitamente lo que debería ser. – sc305495
Mientras esté aumentando el tamaño de su varchar, está bien. Según la referencia Alter Table:
Reducir la precisión o la escala de una columna puede provocar el truncamiento de datos.
Prueba esto:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";
"Modificar" obviamente no es correcto. Por favor compare con otras respuestas. – Frank
Esto es antiguo, pero parece que Kai Tzer estaba probando MySQL y/o Oracle DDL. –
La sintaxis para modificar una columna en una tabla existente en SQL Server (Transact-SQL) es:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Por ejemplo:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
Este SQL Serv er ALTER TABLE
ejemplo modificará la columna llamada last_name
para que sea un tipo de datos VARCHAR(75)
y obligue a la columna a no permitir valores nulos.
ver
por favor agregue más información a su respuesta y formatee el código/consulta! –
Para cambiar el tipo de datos
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Para cambiar de clave primaria
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)
- 1. MS Access SQL, cambio de tipo de datos
- 2. Servidor SQL: Comprobando el tipo de datos de una columna
- 3. El tipo de datos decimales de MS SQL Server redondea
- 4. Cómo cambiar el tipo de datos de una columna de datos en una tabla de datos?
- 5. Almacenamiento de tipo de datos desconocido en la base de datos del servidor MS SQL
- 6. ¿Cómo obtengo el tipo de datos de columna en Oracle con PL-SQL con privilegios bajos?
- 7. ¿Cómo se cambia el tipo de clasificación para una columna MySQL?
- 8. ms sql xml tipo de datos convertir a texto
- 9. Determinar el tipo de datos de una columna en SQLite
- 10. ¿Cómo se cambia el propietario de una base de datos en sql?
- 11. Cambiar el tipo de datos de una columna en Oracle
- 12. Auditoría de datos de SQL Server cambia
- 13. Obtener el tipo de datos de una columna ResultSet
- 14. Conservar los índices SQL mientras se altera el tipo de datos de columna
- 15. ¿Cómo buscar un valor en cualquier columna de cualquier tabla dentro de una base de datos MS-SQL?
- 16. MS SQL Server Row GUID Columna
- 17. ¿Cómo cambio el nombre de una columna en una tabla de base de datos usando SQL?
- 18. Cambiar el tipo de columna sin perder datos
- 19. Sincronizar datos de MS Access a MS SQL
- 20. Agregar una columna después de otra columna dentro de SQL
- 21. Cambiar el nombre de una columna en MS SQL Server 2005
- 22. ¿Se puede restaurar una copia de seguridad de MS SQL 2005 en una instancia de MS SQL 2008?
- 23. Obtener el tipo de datos de una columna de SQL Server con C#
- 24. Entity Framework: cómo obtener el tipo de datos de columna de base de datos de metadatos
- 25. migrar datos de MS SQL a PostgreSQL?
- 26. ¿Cómo alterar el tipo de datos de una columna en una tabla de PostgreSQL?
- 27. Tipo de datos SQL para System.Drawing.Color
- 28. Especificar tipo de datos con el alias de columna en SQL Server 2008
- 29. ¿Cómo alterno el tipo de datos de columna de tabla en más de 1 columna?
- 30. Eliminación de columnas en MS SQL Server
Qué! ¿Se especifica? ¿Cuál es el beneficio? Todo lo que quiero dejar como está, no tengo que mencionarlo, creo. –
@TheincredibleJan Eso sería genial, pero desafortunadamente no funciona de esa manera. Si emite un comando 'ALTER TABLE TableName ALTER COLUMN ColumnName' para cambiar una columna existente que es' [NOT NULL] ', y no la especifica explícitamente, será' [NULL] 'después, ya que es la predeterminada . – takrl