我试图改变一个列从一个varchar(50)到一个nvarchar(200)。修改该表的SQL命令是什么?


当前回答

使用Alter table语句。

Alter table TableName Alter Column ColumnName nvarchar(100)

其他回答

ALTER TABLE TableName 
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]

编辑 如前所述,NULL/NOT NULL应该被指定,参见Rob的回答。

试试这个:

ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";

使用Alter table语句。

Alter table TableName Alter Column ColumnName nvarchar(100)

最初的问题是关于SQL Server的 然而,如果你在使用MySql服务器时阅读这篇文章, ALTER COLUMN不能用来改变列的类型。

要更改MYSQL服务器上的列类型,您可以使用:

ALTER TABLE `USER`
    MODIFY SESSION_ID VARCHAR(100) NULL;

我使用上面的行来使用MySql服务器将列从varchar(20)扩展到varchar(100)。

只要增加varchar的大小就没问题。根据Alter Table引用:

降低列的精度或比例可能导致数据截断。