То, что вызывает Тайм-аут, истекло SqlExceptions в LINQ к SQL?

 ^[A-Z]{0,2}[0-9]{1,6}[A-Z]{1}?$ 

Должно сработать, причина, по которой вы могли печатать 3 буквы, состоит в том, что второй группе было разрешено иметь размер 0-6, а затем, когда вы вводите 3 буквы, она соответствует первой 2-буквенной группе, числовая группа с 0 длина матча и, наконец, последняя Альфа. изменяя его на 1-6, вы вводите от 1 до 6 чисел.

15
задан Jason Baker 8 May 2009 в 15:17
поделиться

3 ответа

Вероятно, вы используете CommandTimeout , установленный в вашем DataContext. По умолчанию это 30 секунд.

Все, что вам нужно сделать, это установить свойство в DataContext перед выполнением запроса.

10
ответ дан 1 December 2019 в 02:29
поделиться

Вероятно, это происходит из-за того, что тайм-аут по умолчанию составляет 30 секунд. Вы можете изменить это, установив атрибут Timeout в строке подключения. Альтернативно вы можете установить это в DataContext .

Вот статья по проекту кода об этом.

3
ответ дан 1 December 2019 в 02:29
поделиться

увеличить таймаут = ПЛОХО
исправить запрос = ХОРОШО

Я не уверен во всех деталях, но в целом применимо следующее:

, когда запрос выполняется медленно, выполните следующие действия в Management Studio:

  • запустите SET ShowPlan_All ON
  • запустите свой запрос
  • посмотрите на вывод для слова «сканирование». здесь ваша проблема.

«Сканировать» = коснуться каждой строки (таблицы или индекса). Хотели бы вы «сканировать» телефонную книгу в поисках одного номера или использовать индекс?

15
ответ дан 1 December 2019 в 02:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: