为什么 SQL Server 中的 Guid 会更改为整数?

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

当我运行

add-migration
时,实体框架正在将我的 Guid
Id
数据类型更改为数据库中的 int 。我还有另外两个课程,其中的字段保留了指导。现在,发生更改的列是一个标识,而不是空值。我认为这是因为它是一个身份列。但我在网上看到其他开发人员,他们的身份字段没有更改为数据库中的 int。

有人知道这是为什么吗?

提前致谢!

我尝试放下桌子几次,但我总是遇到同样的问题。我在网上看到了一些解决方法,但它们看起来有点奇怪。

c# sql-server entity-framework
1个回答
0
投票

https://learn.microsoft.com/en-us/sql/relational-databases/tables/table-column-properties-sql-server-management-studio?view=sql-server-ver16

这是我的想法(无法发表评论,抱歉): 身份字段意味着是增量的,这就是为什么在启用身份列时必须选择身份种子和身份增量。

正如您在上面的链接中看到的,有一个名为 RowGuid 的 Column 属性。我从未使用过它,但也许它适合你。

在我看来,你的原因

在网上看到其他开发者,他们的身份字段没有被更改为数据库中的 int。

因为身份字段可以默认生成,使用增量值,除非您提供一个值。

来源:https://www.sqltutorial.org/sql-identity/

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