使用tinyInt主键创建表会将列转换为int

问题描述 投票:0回答:1

我正在使用以下脚本来生成表(通过SSMS)。当我运行脚本时,然后在SSMS中检查表的设计,当我将其定义为tinyint时,PK是一个整数。我没有发现任何暗示这不可能是tinyint。

CREATE TABLE dbo.DraftStatuses
    (
    DS_ID tinyint NOT NULL IDENTITY (1, 1),
    DS_Name nvarchar(20) NOT NULL
    )  ON [PRIMARY]
GO
ALTER TABLE dbo.DraftStatuses ADD CONSTRAINT
    PK_DraftStatuses PRIMARY KEY CLUSTERED 
    (
    DS_ID
    ) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO

欢迎任何想法或建议。

sql sql-server
1个回答
1
投票

有人可能会遇到这个问题,并发现此答案很有用,并节省了一些时间。

问题是我已经从SSMS删除了一个表,然后运行上面的脚本以进行一些更改来重新创建它,并且SSMS在检查表设计视图时记住了旧值。

解决方案是删除表,重新启动SSMS并再次运行脚本。

© www.soinside.com 2019 - 2024. All rights reserved.