如何在 SQL Server (T-SQL) 中更改列的大小

发布于

如果你使用的是 SQL Server,并且想要使用 T-SQL 更改现有列的大小,本文可以提供帮助。

通过“更改现有列的大小”,我的意思是更改数据大小。例如,假设您有一个 但您希望将其大小增加到 。在这种情况下,您需要执行以下操作。varchar(255)``varchar(500)

更改表语句

如果使用 T-SQL 执行此操作,则需要使用该语句。此语句使您能够在创建表(并且还可能包含数据)后更改表的定义。ALTER TABLE

下面是更改现有列大小的示例:

ALTER TABLE Tasks ALTER COLUMN TaskDescription varchar(500); GO

本示例通过更改列的大小来修改表格。Tasks``TaskDescription

这显然假定列(和表)已经存在于数据库中。否则,您将收到错误。

检查结果

您可以通过查询 INFORMATION_SCHEMA.COLUMNS 视图来检查列大小,示例如下:

USE Solutions; SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = ‘Tasks’;

输出:

COLUMN_NAME      DATA_TYPE  CHARACTER_MAXIMUM_LENGTH  CHARACTER_OCTET_LENGTH
---------------  ---------  ------------------------  ----------------------
TaskId           int        null                      null                  
TaskName         nvarchar   255                       510                   
TaskDescription  varchar    500                       500

在这个示例中,我们切换到正确的数据库 (),然后查询有关表中列的信息。如果表中的列太多,我们可以将其缩小到我们感兴趣的列,但对于此示例,三列没有问题。Solutions``INFORMATION_SCHEMA.COLUMNS``Tasks