Sql server 在SQL Server 2008 SR2中创建和使用客户帐号的最佳方法

Sql server 在SQL Server 2008 SR2中创建和使用客户帐号的最佳方法,sql-server,identity,sql-server-2008-r2,account,Sql Server,Identity,Sql Server 2008 R2,Account,我不是DBA,所以我有点挠头。我正在为我工作的公司准备一份申请表。我需要为公司开展业务的每个办公地点提供一个唯一的客户账号 在过去,我根据主键INT列设置的客户帐号来使用递增标识。我想知道对于这类信息,这是最好的还是更糟糕的选择 你推荐什么?提前感谢您的帮助。我们为帐户和用户表使用标识字段。总的来说,帐户和用户ID在应用程序之外毫无意义。例如,很少有人关心他们的用户id是12345还是1 我们正在制作网站上进行此操作。如果您能找到,我会使用自然密钥。使用无意义的关键点的问题是,最终可能会出现难以

我不是DBA,所以我有点挠头。我正在为我工作的公司准备一份申请表。我需要为公司开展业务的每个办公地点提供一个唯一的客户账号

在过去,我根据主键INT列设置的客户帐号来使用递增标识。我想知道对于这类信息,这是最好的还是更糟糕的选择


你推荐什么?提前感谢您的帮助。

我们为帐户和用户表使用标识字段。总的来说,帐户和用户ID在应用程序之外毫无意义。例如,很少有人关心他们的用户id是12345还是1


我们正在制作网站上进行此操作。

如果您能找到,我会使用自然密钥。使用无意义的关键点的问题是,最终可能会出现难以识别的重复项。

自然关键点是什么意思?此时,用户将看到的实际客户编号是[分配的销售代表姓名首字母]-[办公室标识密钥](ex JDO-15343)。自然密钥是由业务定义的,而不是由应用程序组成的。您可以使用您的实际客户号作为主键还是唯一键?我计划让实际客户号来自客户表的标识键,因为我现在可以告诉您,企业不想定义自己的客户号(无论如何手动)。不,我不是指企业手动定义值,我的意思是,企业知道每个客户的密钥应该是什么,并且可以自己输入,而不是由数据库自动生成。是的,如果可以,我会避免这样做,因为系统无法知道客户是否创建了两次。考虑使用一个主要的电话号码,电子邮件地址,出租车号码,或一些业务已经跟踪,以区分他们。同意。帐号将仅用作内部纸质文档和QuickBooks发票的参考。客户可能偶尔会提到它,但我的公司没有Verizon或TXU那么大。