Это зависит от того, видит ли ваша база данных это как несколько отдельных запросов или как одну транзакцию.Если он видит это как транзакцию, заказ не имеет значения.Если вы хотите убедиться, что он воспринимает это как одну транзакцию, есть способы сообщить базе данных, что она должна создать транзакцию для ваших запросов.База данных (должна) обеспечивать четыре основных свойства (ACID):
- Атомная - вся транзакция завершается успешно или неуспешно.
- Состоит - База данных всегда будет оставаться в согласованном состоянии,независимо от того, успешна ли транзакция или нет.
- Изолированный - Несколько обрабатываемых транзакций одновременно не могут мешать друг другу.
- Долговечный - База данных должна быть в состояниивосстановить зафиксированные данные после программных и аппаратных сбоев.
Изоляция - это то, что относится к вашему делу.Ваши запросы не должны саботировать запросы другого человека, поэтому вам не нужно беспокоиться о том, что другие пользователи одновременно отправляют запросы.
Кроме того, я сомневаюсь, что ваша база данных работает на одном процессоре.Вполне вероятно, что описанные вами линейные пути не произойдут просто потому, что база данных может обрабатывать несколько запросов одновременно.
В целях безопасности я бы начал ваш запрос с BEGIN TRANSACTION
и завершил бы его COMMIT TRANSACTION
(или любым другим синтаксисом, необходимым вашей базе данных).Если база данных воспринимает это как несколько отдельных запросов, у вас могут возникнуть проблемы, если они выполнят какую-либо запись в базу данных.Лучше всего использовать транзакцию.