【问题标题】:Trying to add a column to SQL Server table尝试向 SQL Server 表添加列
【发布时间】:2021-01-14 09:51:41
【问题描述】:

以下语句出现incorrect syntax 错误 (SQL Server 2017)

USE ToDo
GO

ALTER TABLE tasks ADD COLUMN completed TINYINT(1);

在第 1 行开始执行查询
命令已成功完成。
20:31:38第3行开始执行查询

消息 156,第 15 级,状态 1,第 3 行
关键字“COLUMN”附近的语法不正确。

一个非常相似的语法被用来删除一个工作正常的列。

【问题讨论】:

    标签: sql sql-server tsql create-table alter-table


    【解决方案1】:

    此代码可以在 MySQL 中运行,但不能在 SQL Server 上运行。考虑:

    alter table tasks add completed tinyint;
    

    理由:

    • alter table 在 SQL Server 中不支持column;只需删除该关键字

    • tinyint 数据类型没有长度

    【讨论】:

    • 尝试了同样的错误。无论如何,这是我持有的布尔值,所以我只想要 0 或 1 的单个数字
    • 那么可以考虑使用BIT类型。
    • @PrestonDocks:此代码在 SQL Server 中运行,如您所见 in this DB Fiddle
    • 谢谢。我必须删除删除列所需的column。我刚刚习惯了 MSSQL,它似乎有点不一致。无论如何它都有效,谢谢。
    猜你喜欢
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2016-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多