Исправление: Вас могут возникнуть ситуации взаимоблокировки при использовании табличных переменных в SQL Server 2005 или SQL Server 2008

Переводы статьи Переводы статьи
Код статьи: 960283 - Vizualiza?i produsele pentru care se aplic? acest articol.
Ошибка #: 50003816 (исправление SQL)

Корпорация Майкрософт распространяет Microsoft SQL Server 2005 или SQL Server 2008 устраняет файл с исправлениями. Так как исправления являются накопительными, каждый новый выпуск содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2005 или SQL Server 2008 исправление выпуска.
Развернуть все | Свернуть все

В этой статье

Проблема

В Microsoft SQL Server 2005 или Microsoft SQL Server 2008 ситуации взаимоблокировки может возникнуть при выполнении запроса, следующего вида:
INSERT <table variable> EXEC <stored procedure>

Решение

Сведения о накопительном обновлении

SQL Server 2005 с пакетом обновления 2

Существенный:Это исправление необходимо использовать при работе с SQL Server 2005 с пакетом обновления 2 (SP2).

Исправление, устраняющее эту проблему, сначала было выпущено в 11 накопительного обновления для SQL Server 2005 с пакетом обновления 2 (SP2). Для получения дополнительных сведений о этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
958735Накопительный пакет обновления 11 для SQL Server 2005 с пакетом обновления 2 (SP2)
Примечание.Поскольку сборки являются накопительными, каждый новый выпуск исправление содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2005 исправление выпуска. Корпорация Майкрософт рекомендует, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений обратитесь к следующей статье Базы Знаний Майкрософт::
937137SQL Server 2005 собирает, выпущенных после выпуска SQL Server 2005 с пакетом обновления 2 (SP2)
Microsoft SQL Server 2005 исправлениях создаются для определенных пакетов обновления для SQL Server. Необходимо применить исправление SQL Server 2005 с пакетом обновления 2 (SP2) для установки SQL Server 2005 с пакетом обновления 2 (SP2). По умолчанию все исправления, входящие в пакет обновления SQL Server включено в следующий пакет обновления для SQL Server.

SQL Server 2005 с пакетом обновления 3

Существенный:Это исправление необходимо использовать при работе с SQL Server 2005 с пакетом обновления 3.

Исправление этой проблемы также позже была выпущена в накопительное обновление 1 для SQL Server 2005 с пакетом обновления 3. Для получения дополнительных сведений о этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
959195Накопительный пакет обновления 1 для SQL Server 2005 с пакетом обновления 3
Примечание.Поскольку сборки являются накопительными, каждый новый выпуск исправление содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2005 исправление выпуска. Корпорация Майкрософт рекомендует, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений обратитесь к следующей статье Базы Знаний Майкрософт::
960598SQL Server 2005 собирает, выпущенных после выпуска SQL Server 2005 с пакетом обновления 3
Microsoft SQL Server 2005 исправлениях создаются для определенных пакетов обновления для SQL Server. Необходимо применить исправление SQL Server 2005 с пакетом обновления 3 для установки SQL Server 2005 с пакетом обновления 3. По умолчанию все исправления, входящие в пакет обновления SQL Server включено в следующий пакет обновления для SQL Server.

SQL Server 2008

Исправление этой уязвимости первого выпуска накопительного обновления 3. Для получения дополнительных сведений о том, как получить этот накопительный пакет обновления для SQL Server 2008 щелкните следующий номер статьи базы знаний Майкрософт:
960484Накопительный пакет обновления 3 для SQL Server 2008
Примечание.Поскольку сборки являются накопительными, каждый новый выпуск исправление содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2008 исправление выпуска. Рекомендуется, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений обратитесь к следующей статье Базы Знаний Майкрософт::
956909SQL Server 2008 построений, которые были выпущены после выхода SQL Server 2008

Временное решение

Чтобы обойти эту проблему, используйте временной таблицы, вместо того, табличную переменную.

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Майкрософт, перечисленных в разделе «Применяется к»..

Дополнительная информация

При этом выглядеть следующим образом события записываются в журнал ошибок SQL Server:
<Date Time> spid4s      Deadlock encountered .... Printing deadlock information
<Date Time> spid4s      Wait-for graph
<Date Time> spid4s      
<Date Time> spid4s      Node:1

<Date Time> spid4s      OBJECT: 2:416629173:0          CleanCnt:3 Mode:Sch-S Flags: 0x0
<Date Time> spid4s       Grant List 1:
<Date Time> spid4s         Owner:0x05617D00 Mode: Sch-S    Flg:0x0 Ref:1 Life:00000000 SPID:56 ECID:0 XactLockInfo: 0x158308D4
<Date Time> spid4s         SPID: 56 ECID: 0 Statement Type: INSERT Line #: 64
<Date Time> spid4s         Input Buf: RPC Event: Proc [Database Id = 28 Object Id = 160719625]
<Date Time> spid4s       Requested By: 
<Date Time> spid4s         ResType:LockOwner Stype:'OR'Xdes:0x1B907648 Mode: Sch-M SPID:56 BatchID:0 ECID:0 TaskProxy:(0x4B938364) Value:0x561f060 Cost:(N/A)
<Date Time> spid4s      Deadlock monitor failed to resolve this deadlock.
Server may require restart to recover from this condition
<Date Time> spid4s      Using 'dbghelp.dll' version '4.0.5'
<Date Time> spid14s     deadlock-list
<Date Time> spid14s      deadlock victim=process0
<Date Time> spid14s       process-list
<Date Time> spid14s        process id=process9285c8 waitresource=OBJECT: 2:416629173:0  waittime=12593 ownerId=1746104 transactionname=droptemp lasttranstarted=<Date Time> XDES=0x1b907648 lockMode=Sch-M schedulerid=2 kpid=8652 status=suspended spid=56 sbid=0 ecid=0 priority=0 transcount=1 lastbatchstarted=<Date Time> lastbatchcompleted=<Date Time> clientapp=WstClient hostname=PTONEBOX02 hostpid=21660 loginname=NT AUTHORITY\NETWORK SERVICE isolationlevel=read committed (2) xactid=1745726 currentdb=28 lockTimeout=4294967295 clientoption1=673316896 clientoption2=128056
<Date Time> spid14s         executionStack
<Date Time> spid14s          frame procname=Group.dbo.psp_GroupEntityChangesGet line=64 stmtstart=4052 stmtend=4830 sqlhandle=0x03001c0009639409d6a1a100289b00000100000000000000
<Date Time> spid14s     INSERT @t_Rowset
<Date Time> spid14s             EXEC @i_ReturnCode = @vc_ProcName
<Date Time> spid14s                  @i_ReleaseVersion = @i_ReleaseVersion
<Date Time> spid14s                 ,@bi_ScopeID = @bi_ScopeID
<Date Time> spid14s                 ,@dt_StartDatetime = @dt_StartDatetime
<Date Time> spid14s                 ,@dt_EndDatetime = @dt_EndDatetime
<Date Time> spid14s                 ,@f_ReturnAll = @f_ReturnAll
<Date Time> spid14s                 ,@i_MaxRows = @i_MaxRows
<Date Time> spid14s                 ,@f_MoreRows = @f_MoreRows OUTPUT     
<Date Time> spid14s         inputbuf
<Date Time> spid14s     Proc [Database Id = 28 Object Id = 160719625]    
<Date Time> spid14s       resource-list
<Date Time> spid14s        objectlock lockPartition=0 objid=416629173 subresource=FULL dbid=2 objectname=tempdb.dbo.#18D541B5 id=lock13849a80 mode=Sch-S associatedObjectId=416629173
<Date Time> spid14s         owner-list
<Date Time> spid14s          owner id=process9285c8 mode=Sch-S
<Date Time> spid14s         waiter-list
<Date Time> spid14s          waiter id=process9285c8 mode=Sch-M requestType=wait
<Date Time> spid4s      **Dump thread - spid = 4, PSS = 0x059DA7D8, EC = 0x059DA7E0
<Date Time> spid4s      ***Stack Dump being sent to <drive>:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\<dumpname>.txt
<Date Time> spid4s      * *******************************************************************************
<Date Time> spid4s      *
<Date Time> spid4s      * BEGIN STACK DUMP:
<Date Time> spid4s      *   <Date Time> spid 4
<Date Time> spid4s      *
<Date Time> spid4s      * Unresolved deadlock
<Date Time> spid4s      *
<Date Time> spid4s      *  
<Date Time> spid4s      * *******************************************************************************

SQL Server 2005

Для получения дополнительных сведений об изменении файлов, а также сведения о требованиях для применения накопительного обновления для пакета, который содержит данное исправление, описанное в данной статье базы знаний Майкрософт щелкните следующий номер статьи базы знаний Майкрософт:
958735Накопительный пакет обновления 11 для SQL Server 2005 с пакетом обновления 2 (SP2)

SQL Server 2008

Для получения дополнительных сведений об изменении файлов, а также сведения о требованиях для применения накопительного обновления для пакета, который содержит данное исправление, описанное в данной статье базы знаний Майкрософт щелкните следующий номер статьи базы знаний Майкрософт:
960484Накопительный пакет обновления 3 для SQL Server 2008

Ссылки

Для получения дополнительных сведений о списке построений, которые будут доступны после SQL Server с пакетом обновления 2 (SP2) щелкните следующий номер статьи базы знаний Майкрософт:
937137SQL Server 2005 собирает, выпущенных после выпуска SQL Server 2005 с пакетом обновления 2 (SP2)
Для получения дополнительных сведений о последовательный модели обслуживания для SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
935897Последовательный модели обслуживания доступна группа разработчиков SQL Server для предоставления исправления для устранения неполадок
Для получения дополнительных сведений о том, как получить SQL Server 2005 с пакетом обновления 2 (SP2) щелкните следующий номер статьи базы знаний Майкрософт:
913089Получение последнего пакета обновления для SQL Server 2005
Для получения дополнительных сведений о новых возможностях и улучшениях в SQL Server 2005 с пакетом обновления 2 (SP2) посетите следующий веб-узел корпорации Майкрософт:
http://go.Microsoft.com/fwlink/?LinkId=71711
Для получения дополнительных сведений о схеме именования для обновления SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
822499Новая схема присвоения имен пакетам обновлений программного обеспечения Microsoft SQL Server
Дополнительные сведения о терминах, используемых при описании обновлений программного обеспечения, см. в следующей статье базы знаний Майкрософт::
824684Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Свойства

Код статьи: 960283 - Последний отзыв: 29 ноября 2010 г. - Revision: 2.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
Ключевые слова: 
kbsurveynew kbfix kbqfe kbexpertiseadvanced kbmt KB960283 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:960283

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com