如何在两个不同的SQL Server中防止重复的UniqID

时间:2014-10-10 08:17:57

标签: c# asp.net sql-server database database-design

我正在为我的大学开发一个社交网络网站。它使用SQL Server数据库,每个用户都有一个UniqID(它是Int,它按身份增量增加,从1开始增加到......)。

我的问题是,如果我想在另一所大学和自己的服务器上运行此网站,UniqIDs将从1开始......,因此会导致重复UniqIDs,并且不可能连接这两个大学网站和学生不能与另一个大学生联系。

我不知道如何解决这个问题?我应该使用分布式数据库?

请给我一个开始的想法。

谢谢

3 个答案:

答案 0 :(得分:1)

因为有不同数据的不同数据库,你不能简单地检查从哪个数据库获取数据? 如果你需要这样做所有数据库端然后不依赖于每个用户的ID,像位置一样像“ID 42,LocationCode UHJ”那样,如果“BOB”的ID是相同的并不重要“JOE”,因为你知道那里的哪个位置,并且可以告诉那里不一样的

答案 1 :(得分:0)

您可以使用UNIQUE-IDENTIFIER(GUID)作为ID。它保证是独一无二的(他们这么说)

unique identifier

答案 2 :(得分:-2)

不要让数据库分配ID,而是生成您自己的ID,可能使用对于某个位置唯一的前缀,例如一所大学的学生是UNI1_1,UNI1_2等,而另一所大学的学生是UNI2_1,UNI2_2。