在SQL Server中维护同一记录的两个外键

在SQL Server中维护同一记录的两个外键,sql,sql-server,performance,foreign-keys,guid,Sql,Sql Server,Performance,Foreign Keys,Guid,我正在考虑在SQL Server数据库中维护同一记录的两个外键。原因是我希望在将数据持久化到数据库以提高性能时使用整数键,但我还希望存储用于脱机设备支持的GUID。例如:Person表将存储AddressID和AddressGuid,这两个地址都指向地址表中的同一条记录。有没有人遇到过这个想法或者有更好的解决方案?我意识到,有人可以将AddressID更新为不同的内容,而忘记更新AddressGuid,我想我可以通过在AddressGuid和AddressID上创建外键来解决这个问题,以防出现问

我正在考虑在SQL Server数据库中维护同一记录的两个外键。原因是我希望在将数据持久化到数据库以提高性能时使用整数键,但我还希望存储用于脱机设备支持的GUID。例如:Person表将存储AddressID和AddressGuid,这两个地址都指向地址表中的同一条记录。有没有人遇到过这个想法或者有更好的解决方案?我意识到,有人可以将AddressID更新为不同的内容,而忘记更新AddressGuid,我想我可以通过在AddressGuid和AddressID上创建外键来解决这个问题,以防出现问题。但是,所有实际的联接都只使用AddressId的外键

我看到这个数据库越来越大,我不愿意仅仅因为我们使用Guid键离线创建数据就使用它们