2011-02-03 2 views
2

Я пытаюсь выполнить запрос, который получает все идентификаторы из таблицы, где находится столбец document(varbinary(max)) is null.таймаут по запросу с маленькой таблицей

Запрос всегда разрывается, и я запускаю его против таблицы из 5000 строк.

select ID from Invoice where Document is null 

Im using SQL Express 2008 R2 и Sql Management Studio. Правильно ли это? Я что-то упускаю? Даже если я добавлю первое первое время запроса

+1

Это выглядит хорошо для меня. Не уверен, почему это время. Какие РСУБД, если я могу спросить? – BoltClock

+0

Im using SQL Server 2008 r2 Express – alejandrobog

+2

Вы используете это из SQL Management Studio или из кода клиента? –

ответ

4

Иногда таблицы блокируются. Попробуйте щелкнуть от выбранной таблицы в вашем интерфейсе.

Какие СУБД вы используете? SQLServer? Sybase? или ..

Неужели все еще тайм-аут, когда вы делаете :?

SELECT TOP 10 ID 
from Invoice where Document is null 
+0

Im using SQL Server 2008 r2 Express – alejandrobog

+1

@alenhandrobog: Попробуйте поставить предложение «TOP», как я предложил, и сообщите нам, если вы все еще испытываете таймаут. – VoodooChild

+0

Даже с верхним 1 таймаутом – alejandrobog

1

сделать это таким образом, для чтения только выглядят

select ID from Invoice (nolock) where Document is null 
+0

Вы, кажется, знаете об этом 'nolock', знаете ли вы, почему таблица может быть заблокирована? Любое хорошее объяснение? – VoodooChild

1
If connecting on localhost Then 

    If connecting from Management Studio Then 

     Try restarting SQL Server services...could be locks. 
     Try restarting machine...could be locks. 

    ElseIf connecting from remote app code Then 

     Check if SQL Server is setup for remote connections. 
     Check connection strings. 
     Check seccurity privleges. 
     Check log file. 

    End If 

Else 
      Check if SQL Server is setup for remote connections 
     Check connection strings. 
     Check seccurity privledges. 

End If 
+0

Я собираюсь попробовать перезапустить службу примерно за час, когда активность меньше. Я даю вам знать результаты. Спасибо – alejandrobog

+0

Я перезапустил службу, и то же самое произойдет – alejandrobog

+0

вы можете выполнить любой выбор из любой таблицы в БД? ... также попробуйте использовать SELECT TOP 1, чтобы вернуть только одну строку ... или использовать предложение WHERE ... если ни одно из вышеперечисленных действий не работает, то у вас много проблем с соединением или безопасностью. –

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