У меня есть приложение, которое использует GUID в качестве первичного ключа почти во всех таблицах, и я читал, что при использовании GUID в качестве первичного ключа возникают проблемы с производительностью. Честно говоря, я не видел никаких проблем, но я собираюсь запустить новое приложение, и я все еще хочу использовать GUID в качестве первичных ключей, но я думал об использовании составного первичного ключа (GUID и, возможно, другое поле.)
Я использую GUID, потому что им удобно и легко управлять, когда у вас есть разные среды, такие как «производственная», «тестовая» и «разработка» баз данных, а также для переноса данных между базами данных.
Я буду использовать Entity Framework 4.3 и хочу назначить Guid в коде приложения, прежде чем вставлять его в базу данных. (т. е. я не хочу, чтобы SQL генерировал Guid ).
Как лучше всего создавать первичные ключи на основе GUID -, чтобы избежать предполагаемого снижения производительности, связанного с этим подходом?