相关疑难解决方法(0)

为什么新的ASP.NET Identity表停止使用Guid(uniqueidentifier类型)作为键?

我试图理解为什么新的ASP.NET身份表停止使用Guid(uniqueidentifier类型)作为键 - 相反它现在正在使用nvarchar(128)但仍保持Guid一个string...

这不是一个巨大的浪费吗?(uniqueidentifier只有2 integers对整体Guid作为36个字符string)

我怀疑实体框架可能对此负责......

更改为uniqueidentifier键是否安全?

谁能告诉我使用36个字符串有什么好处?

asp.net entity-framework entity-framework-6 asp.net-identity

7
推荐指数
1
解决办法
1478
查看次数

哪个是SQL Server数据库中最常见的ID类型,哪个更好?

使用Guid(UniqueIdentifier)作为Primary/Surrogate Key列或序列化的"identity"整数列是否更好; 和为什么它更好?在哪种情况下你会选择一个而不是另一个?

sql sql-server database-design

6
推荐指数
3
解决办法
1万
查看次数

本机主键还是自动生成的?

通常,最好使用本机主键(即现有列或列组合)或将主键设置为自动生成的整数行?

编辑:
有人向我指出,这与这个问题非常相似.

这里的共识是使用代理键,这是我的天生倾向,但我的老板告诉我,我应该尽可能使用自然键.他的建议对于这个特定的应用程序可能是最好的,因为行中的Name唯一地标识它并且我们需要保持查看旧数据的能力,因此对名称/规则的任何更改将意味着新的唯一行.

虽然这里的答案都很有帮助,但大多数都是基于主观的"这就是你应该做的",而不是引用支持来源.我是否缺少一些必要的阅读材料,或者数据库设计是否具有高度主观性和/或依赖于应用程序?

database database-design primary-key

5
推荐指数
2
解决办法
3603
查看次数

Person表主键的最佳选择

在代表一个人的表(如客户,用户,客户,员工等)中,您对主键的选择是什么?我的第一选择是SSN号码.但是,由于隐私问题和不同的法规,不鼓励使用SSN.SSN可以在人的一生中改变,因此这是另一个原因.

我想精心挑选的自然主键的功能之一就是避免重复.我不希望一个人在数据库中注册两次.某些代理或生成的主键无助于避免重复条目.解决这个问题的最佳方法是什么?

编辑:

保证人员实体应用程序唯一性的最佳方法是什么?这可以在数据库级别使用主键或唯一性约束来处理吗?

database database-design primary-key

5
推荐指数
2
解决办法
6002
查看次数