当前位置:  开发笔记 > 编程语言 > 正文

如何更改SQL Server中列的数据类型?

如何解决《如何更改SQLServer中列的数据类型?》经验,为你挑选了4个好方法。

我正在尝试将列从a更改varchar(50)为a nvarchar(200).什么是更改此表的SQL命令?



1> cmsjr..:
ALTER TABLE TableName 
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]

编辑 如前所述,应该指定NULL/NOT NULL,请参阅Rob的答案.


@TheincredibleJan那会很酷,但不幸的是它不会那样工作.如果你发出一个`ALTER TABLE TableName ALTER COLUMN ColumnName`命令来改变一个现有的列``[NOT NULL]`,你没有明确指定它,那么之后它将是`[NULL]`,因为那是默认的.
仅当您在该列上没有约束和索引时,此方法才有效,否则,您需要删除所有内容并重新创建它,这是繁琐而繁琐的工作,尤其是当该列上有许多外部引用时。例如,当从tinyint更改为int时。

2> Rob Garrison..:

不要忘记可空性.

ALTER TABLE .
ALTER COLUMN  nvarchar(200) [NULL|NOT NULL]


^在alter table语句完成执行后,它将默认为NULL,而不显式定义它应该是什么.

3> John Sansom..:

使用Alter表语句.

Alter table TableName Alter Column ColumnName nvarchar(100)



4> 小智..:

修改SQL Server(Transact-SQL)中现有表中的列的语法是:

ALTER TABLE table_name
    ALTER COLUMN column_name column_type;

例如:

ALTER TABLE employees
    ALTER COLUMN last_name VARCHAR(75) NOT NULL;

此SQL Server ALTER TABLE示例将修改被称为last_name数据类型VARCHAR(75)的列,并强制该列不允许空值.

看到这里

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有