Наше приложение работает на десятках серверов, и только некоторые из них получают это сообщение об ошибке. Что еще хуже, SQL-запрос, вызывающий это сообщение об ошибке, кажется, выполняется. Приложение работает исправно. Эту ошибку вызывает процесс Perl-скрипт, работающий в Windows Server 2003. База данных размещена на том же компьютере. Это SQL, который вызывает ошибку:
Update [WorkQueue]
set [Status] = ?
where [id] in
(
select top 1 [id] from [WorkQueue]
where [Status] = 1 order by [id] ASC
)
Мы используем ODBC для подключения к базе данных SQL Server 2005 через TCP / IP через порт 1433. Проблема в том, что эта ошибка «Ошибка канала связи (SQL-08S01)» выдается примерно три раза в минуту. Стоит ли мне попробовать переключиться на именованные каналы для моего протокола подключения?