Estou tentando alterar uma coluna de a varchar(50)
para a nvarchar(200)
. Qual é o comando SQL para alterar esta tabela?
Estou tentando alterar uma coluna de a varchar(50)
para a nvarchar(200)
. Qual é o comando SQL para alterar esta tabela?
Respostas:
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
EDIT Como NULL / NOT NULL deveria ter sido especificado, consulte a resposta de Rob também.
ALTER TABLE TableName ALTER COLUMN ColumnName
comando para alterar uma coluna existente [NOT NULL]
e não a especificar explicitamente, será [NULL]
depois, pois esse é o padrão.
SysName
(que o SSMS não permite).
ALTER TABLE table MODIFY COLUMN column datatype
trabalhou para mim.
Não se esqueça da nulidade.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
Use a instrução Alter table.
Alter table TableName Alter Column ColumnName nvarchar(100)
A sintaxe para modificar uma coluna em uma tabela existente no SQL Server (Transact-SQL) é:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Por exemplo:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
Este ALTER TABLE
exemplo do SQL Server modificará a coluna chamada last_name
para ser um tipo de dados VARCHAR(75)
e forçará a coluna a não permitir valores nulos.
veja aqui
Contanto que você esteja aumentando o tamanho do seu varchar, estará bem. De acordo com a referência da tabela Alter :
Reduzir a precisão ou a escala de uma coluna pode causar truncamento de dados.
Para alterar o tipo de dados
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Para alterar a chave primária
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)
ALTER TABLE [dbo].[TableName]
ALTER COLUMN ColumnName VARCHAR(Max) NULL
Tente o seguinte:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";