2012-06-27 2 views
0

Использование SQL Server 2008 R2Временно увеличить очередь команд SQL Server

Возможно ли увеличить командную очередь и/или ограничение времени ожидания для выполнения команды?

У меня есть это простое приложение, которое не исчерпывает SQL Server, но время от времени есть много параллельных аналогичных запросов почти в одно и то же время, которые некоторые достигают взаимоблокировок.

Надежность (выполнение команд выполняется) для меня важнее производительности (я не против, если команды будут выполняться за несколько секунд задержки).

Есть ли переключатель или команда, позволяющая многим другим командам находиться в очереди до тех пор, пока не будет выполнена, или существует некоторая возможность сделать ограничение времени до тупиков [временно] намного дольше [, как только будет выполняться команда определенного типа] (команды могут запрограммироваться как хранимые процедуры)?


Edit:

Поразительно, используя with (tablockx) решить мою проблему.

Может кто-нибудь объяснить?

Я посажу, что в качестве ответа, но не буду брать кредит на это (не будет отмечать его в качестве ответа)

+0

Вы имеете в виду команду тайм-аутов соединения? Это настройка на стороне клиента, которую может установить строка программист/соединение. – TomTom

+1

A * deadlock * не то, что только один раз может решить. Если у вас возникли тупики, вам нужно найти способы предотвратить их повторение - ждать дольше не является одним из этих способов. –

+0

@tomtom - Есть два сервера, сервер SQL и веб-сервер. веб-сервер является единственным, кто отправляет запросы на сервер SQL. могу ли я настроить веб-сервер для запроса более длительного времени для команды SQL? если да, то как? Помните, я просто хочу избежать тупиков. – Different111222

ответ

0

Я автор этого вопроса. Я дошел до решения моей проблемы.

Я решил свою проблему с помощью with (tablockx)

вопрос шире, чем моя проблема, поэтому это не полный ответ.

Я не беру на себя ответственность за этот ответ как ответ.

Смежные вопросы