发布问题时为什么有最少字符数限制?o.O
你使用 int、bigint、tinyint 或其他什么类型?
这似乎只是一个小事情,我只是想知道通常的做法是什么。
发布问题时为什么有最少字符数限制?o.O
你使用 int、bigint、tinyint 或其他什么类型?
这似乎只是一个小事情,我只是想知道通常的做法是什么。
一切都取决于...这是我对问题的最爱回答!=)
大多数情况下,我们使用Guid。尽管它们在大小上比int、tinyint等更大,但我喜欢我的业务对象可以在将记录插入数据库之前知道值是什么。
其他时候,我可能会使用字符串,例如客户ID等,需要在与数据库交互时轻松识别。
我发现int类型已经足够大了。
变得更小是没有意义的...
我非常喜欢 GUID。最好的事情是它们可以在客户端或服务器上轻松生成,而不需要进行任何数据库访问。此外,如果您必须同步数据库,它们将是救星。我唯一发现的缺点是,在 Web 应用程序中,如果您在 URL 上传递密钥,则可能会出现混乱的查询字符串。
这不取决于应用程序生命周期内需要存储多少个ID吗?
需要更多信息。你存储的是什么类型的ID?任何小于int的类型可能都不是一个好主意,使用字符串作为ID可能是合理的,因为它没有数字数量上的限制问题,也不受数字的限制,所以你可以使用用户名作为ID。
关于使用GUID时始终具有比较列,我会像Jason一样表示同意。不过我更喜欢序列而不是GUID,因为无论如何你都需要一个序列。
就数据类型而言,这取决于您需要存储多少记录,但通常int就足够了。