Вопрос
Просто хотел получить несколько мнений о первичных ключах - было бы лучше использовать идентификационные номера / порядковые номера или использовать стратегию HiLo (запрашивать высокое значение и увеличивать низкое значение в самом приложении)?
Решение
Если ваше приложение будет использовать только одну базу данных, я бы выбрал идентификатор / последовательность.
Единственная действительно веская причина использовать HiLo, которую я видел, - это когда у вас может быть два несвязанных экземпляра вашего приложения, над которыми люди могут работать одновременно, и вам нужно в какой-то момент согласовать различия
Бывший.Вы работаете над системой управления контентом, в которой люди могли бы работать на двух разных серверах в разных местах, но в какой-то момент их необходимо синхронизировать
Другие советы
Если вы используете SQL Server 2005/2008 с большой таблицей (> 1 миллиона строк), возможно, вам захочется рассмотреть это, который ссылается на это.При определенных обстоятельствах возникает проблема с scope_identity() и @@identity.
Конечно, разработка с учетом текущей проблемы внедрения не всегда является самым мудрым решением.