Назад | Перейти на главную страницу

Почему SQL Server 2008 дает сбой при выполнении простых SQL-запросов?

Я разработчик и использую экземпляр SQL Server 2008 SP1 (экземпляр по умолчанию) на моем локальном компьютере (32-разрядная версия Windows 7 RC). Иногда, когда разрабатываемая мной программа отправляет запрос на SQL Server, весь SQL Server дает сбой. Запросы SQL не сложные, а простые запросы CRUD. Когда я перезапускаю сервер, следующий запрос снова убивает его.

В записи журнала событий указано, что ошибка произошла из-за MS DTC. К сожалению, я понятия не имею, почему. Когда я использую SQL Server для других целей через SQL Server Management Studio, у меня не возникало никаких проблем, поэтому я не думаю, что это связано с моей операционной системой.

Есть ли у кого-нибудь идеи, почему происходит сбой SQL Server? Это делает развитие действительно трудным, а иногда даже невозможным.

Наилучшие пожелания,
Оливер Ханаппи

PS: Вот запись в журнале событий.

Компонент MS DTC создал исключение. Особенности ошибки: процесс "C: \ Program Files \ Microsoft SQL Server \ MSSQL10.MSSQLSERVER \ MSSQL \ Binn \ sqlservr.exe" -sMSSQLSERVER 'вызвал исключение в компоненте, связанном с MSDTC.
Следующее исключение (0xc0000005) было создано по адресу 0x 00FEAC8C, Pid: 7400.
Процесс завершается.
Дополнительная информация, полезная в отладчике:
Вы можете сделать '.exr 0x0369E930', чтобы отобразить запись исключения.
Вы можете сделать '.cxr 0x0369E94C', чтобы отобразить контекст во время исключения.

0

RC = релиз-кандидат = ПРОИЗВОДСТВО НЕ ГОТОВА

Я бы не стал использовать Windows 7, пока другие люди не пролили кровь и не выяснили все проблемы ...

Вы должны выполнять распределенные транзакции от вашего программного обеспечения к базе данных. Вам нужно выполнять явные распределенные транзакции?

DTC - это часть ОС, а не SQL Server. Вероятно, вы столкнулись с ошибкой в ​​MSDTC, которая есть в RC-версии Windows 7.

Если вам не нужны явные распределенные транзакции, отключите использование транзакций в своем коде. Если вам действительно нужно использовать явные распределенные транзакции, попробуйте запустить свой код в окончательной версии ОС, а не в предварительной версии ОС.