FIX: Error message when you execute a user-defined function in SQL Server 2005: "Invalid length parameter passed to the SUBSTRING function" or "A transport-level error has occurred when receiving results from the server"

Traduções de Artigos Traduções de Artigos
Artigo: 924291 - Ver produtos para os quais este artigo se aplica.
Bug #: 1209 (SQL Hotfix)
Bug #: 443526 (SQLBUDT)
Importante
Microsoft distributes Microsoft SQL Server 2005 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2005 fix release.
Expandir tudo | Reduzir tudo

Nesta página

This article describes the following about this hotfix release:
  • The issues that are fixed by this hotfix package
  • The prerequisites for installing the hotfix package
  • Information about whether you must restart the computer after you install the hotfix package
  • Information about whether the hotfix package is replaced by any other hotfix package
  • Information about whether you must make any registry changes
  • The files that are contained in the hotfix package

Sintomas

When you execute a user-defined function in SQL Server 2005, you receive an error message. This problem occurs if you run the following statement before you execute the user-defined function:
SET FMTONLY ON
You receive a different error message, depending on the version of SQL Server 2005 that you have installed. If you use SQL Server 2005 Service Pack 1 (SP1), you may also experience other problems.

The original release version of SQL Server 2005

When you execute the user-defined function in the original version of SQL Server 2005, you receive the following error message.
Msg 536, Level 16, State 5, Line 4
Invalid length parameter passed to the SUBSTRING function.

SQL Server 2005 SP1

When you execute the user-defined function in SQL Server 2005 SP1, you experience the following problems:
  • You receive the following error message:
    Msg 109, Level 20, State 0, Line 0
    A transport-level error has occurred when receiving results from the server. (provider: Shared Memory Provider, error: 0 - The pipe has been ended.)
  • The SQL Server service stops.
  • The following access violation is logged in the SQL Server Errorlog file:
    SqlDumpExceptionHandler: Process 53 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.

Resolução

Informações sobre o service pack

To resolve this problem, obtain the latest service pack for SQL Server 2005. Para mais informações, clique o número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
913089 How to obtain the latest service pack for SQL Server 2005

Informações sobre correcções

Está disponível na Microsoft uma correcção suportada. Contudo, esta correcção é destinada apenas a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico. Esta correcção poderá submetida a testes adicionais. Por conseguinte, se não estão a ser gravemente afectado por este problema, recomendamos que aguarde a próxima actualização de software que contenha esta correcção.

Se a correcção está disponível para transferência, isso significa que existe uma secção de 'Correcção transferência disponível na parte superior deste artigo da base de dados de conhecimento da. Se esta secção não aparecer, contacte o serviço de cliente da Microsoft e suporte para obter a correcção.

Nota Se ocorrerem problemas adicionais ou se qualquer resolução for necessário, poderá ter de criar um pedido de assistência separado. Os custos normais do suporte irão aplicados perguntas de suporte adicionais e problemas que não incluídos nesta correcção específica. Para obter uma lista completa dos números de telefone do serviço de cliente do Microsoft de ou para criar um pedido de assistência separado, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support
Nota O formulário de 'Correcção transferência disponível apresenta os idiomas para a qual a correcção está disponível. Se não vir o idioma, é porque não está disponível para esse idioma uma correcção.

Pré-requisitos

You must have SQL Server 2005 Service Pack 1 (SP1) installed to apply this hotfix.

For more information about how to obtain SQL Server 2005 Service Pack 1, click the following article number to view the article in the Microsoft Knowledge Base:
913089 How to obtain the latest service pack for SQL Server 2005

Reiniciar informações

You have to restart the SQL Server service after you apply this hotfix.

Informações de registo

You do not have to change the registry.

Informações sobre os ficheiros da correcção

Esta correcção contém apenas os ficheiros necessários para corrigir os problemas neste artigo. This hotfix may not contain of all the files that you must have to fully update a product to the latest build.

A versão inglesa desta correcção tem os atributos de arquivo (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros estão listadas no ' formato de hora universal coordenada ' (UTC). Ao visualizar as informações do ficheiro, é convertida para a hora local. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Reduzir esta tabelaExpandir esta tabela
File nameFile versionFile sizeDateTimePlatform
Hauresourcedb.ldfNot Applicable524,28817-Aug-200610:39Not Applicable
Hauresourcedb.mdfNot Applicable39,911,42417-Aug-200610:39Not Applicable
Logread.exe2005.90.2183.0398,11217-Aug-200614:13x86
Microsoft.analysisservices.adomdclient.dll9.0.2183.0543,52017-Aug-200614:13x86
Microsoft.analysisservices.deployengine.dll9.0.2183.0138,01617-Aug-200614:12x86
Microsoft.analysisservices.dll9.0.2183.01,215,26417-Aug-200614:13x86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2183.075,55217-Aug-200614:11x86
Microsoft.sqlserver.sqlenum.dll9.0.2183.0908,06417-Aug-200614:13x86
Msgprox.dll2005.90.2183.0197,92017-Aug-200614:11x86
Msmdlocal.dll9.0.2183.015,703,84017-Aug-200614:13x86
Msmdredir.dll9.0.2183.03,968,80017-Aug-200614:14x86
Replprov.dll2005.90.2183.0547,61617-Aug-200614:13x86
Replrec.dll2005.90.2183.0782,11217-Aug-200614:12x86
Sqlaccess.dll2005.90.2183.0347,93617-Aug-200614:13x86
Sqlagent90.exe2005.90.2183.0319,26417-Aug-200614:12x86
Sqlservr.exe2005.90.2183.028,959,06417-Aug-200614:13x86
Sysdbupg.sqlNot Applicable192,34619-Jul-200609:02Not Applicable
Template_hauresourcedb.ldfNot Applicable524,28817-Aug-200610:39Not Applicable
Template_hauresourcedb.mdfNot Applicable39,911,42417-Aug-200610:39Not Applicable
Xpstar90.dll2005.90.2183.0292,64017-Aug-200614:16x86
Xpstar90.rll2005.90.2183.0152,86417-Aug-200614:12Not Applicable

Como contornar

To work around this problem, change the SET FMTONLY setting to OFF before you execute the user-defined function.

Ponto Da Situação

A Microsoft confirmou que este problema ocorre nos produtos Microsoft listados na secção "Aplica-se a". This problem was first corrected in SQL Server 2005 Service Pack 2.

Mais Informação

For more information about the naming schema for Microsoft SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:
822499 New naming schema for Microsoft SQL Server software update packages
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Stack dump information

You receive the following stack dump information in SQL Server 2005 SP1:
2006-08-16 19:30:37.61 spid54      * Short Stack Dump
2006-08-16 19:30:37.62 spid54      014718DE Module(sqlservr+004718DE)
2006-08-16 19:30:37.62 spid54      0108B032 Module(sqlservr+0008B032)
2006-08-16 19:30:37.62 spid54      0108B066 Module(sqlservr+0008B066)
2006-08-16 19:30:37.62 spid54      014680F2 Module(sqlservr+004680F2)
2006-08-16 19:30:37.62 spid54      01BDF9D2 Module(sqlservr+00BDF9D2)
2006-08-16 19:30:37.62 spid54      014688D5 Module(sqlservr+004688D5)
2006-08-16 19:30:37.62 spid54      01023E34 Module(sqlservr+00023E34)
2006-08-16 19:30:37.62 spid54      0136764A Module(sqlservr+0036764A)
2006-08-16 19:30:37.62 spid54      013674C1 Module(sqlservr+003674C1)
2006-08-16 19:30:37.62 spid54      01367356 Module(sqlservr+00367356)
2006-08-16 19:30:37.62 spid54      01BF2102 Module(sqlservr+00BF2102)
2006-08-16 19:30:37.62 spid54      01381DA5 Module(sqlservr+00381DA5)
2006-08-16 19:30:37.62 spid54      01023E34 Module(sqlservr+00023E34)
2006-08-16 19:30:37.62 spid54      01041DD5 Module(sqlservr+00041DD5)
2006-08-16 19:30:37.62 spid54      0103DFD4 Module(sqlservr+0003DFD4)
2006-08-16 19:30:37.62 spid54      01006A96 Module(sqlservr+00006A96)
2006-08-16 19:30:37.62 spid54      01006BBC Module(sqlservr+00006BBC)
2006-08-16 19:30:37.62 spid54      01006DAB Module(sqlservr+00006DAB)
2006-08-16 19:30:37.62 spid54      01447562 Module(sqlservr+00447562)
2006-08-16 19:30:37.62 spid54      0144859B Module(sqlservr+0044859B)
2006-08-16 19:30:37.62 spid54      0144789A Module(sqlservr+0044789A)
2006-08-16 19:30:37.64 spid54      01447720 Module(sqlservr+00447720)
2006-08-16 19:30:37.64 spid54      781329AA Module(MSVCR80+000029AA)
2006-08-16 19:30:37.65 spid54      78132A36 Module(MSVCR80+00002A36)

sqlservr!CMsqlXactImp::ClearAllUpdateSequenceMarkers+0x3b (CONV: thiscall)
sqlservr!CMsqlXactImp::RollbackInternal+0x3a (CONV: thiscall)
sqlservr!CMsqlXactImp::Rollback+0x31 (CONV: thiscall)
sqlservr!CAutoMsqlXact::RollbackNestedXact+0x1b (FPO: [0,0,0]) (CONV: thiscall)
sqlservr!CExecuteStatement::RollbackNestedXact+0x14 (FPO: [1,0,0]) (CONV: thiscall)
sqlservr!CExecuteStatement::FinishNormalImp+0x8c (CONV: thiscall)
sqlservr!CExecuteStatement::FinishOnExceptionImp+0x13 (CONV: thiscall)
sqlservr!CMsqlExecContext::FExecute+0x65c (CONV: thiscall)
sqlservr!CSQLSource::Execute+0x73b (CONV: thiscall)
sqlservr!process_request+0x2e3 (CONV: stdcall)
sqlservr!process_commands+0x2e0 (CONV: stdcall)
sqlservr!SOS_Task::Param::Execute+0xe2 (CONV: thiscall)
sqlservr!SOS_Scheduler::RunTask+0xb9 (CONV: thiscall)
sqlservr!SOS_Scheduler::ProcessTasks+0x141 (CONV: stdcall)
sqlservr!SchedulerManager::WorkerEntryPoint+0x1a8 (CONV: stdcall)
sqlservr!SystemThread::RunWorker+0x7f (CONV: thiscall)
sqlservr!SystemThreadDispatcher::ProcessWorker+0x225 (CONV: thiscall)
sqlservr!SchedulerManager::ThreadEntryPoint+0x143 (CONV: stdcall)
msvcr80!_callthreadstartex+0x1b (FPO: [Non-Fpo]) (CONV: cdecl)
msvcr80!_threadstartex+0x66 (FPO: [Non-Fpo]) (CONV: stdcall)

Propriedades

Artigo: 924291 - Última revisão: 4 de novembro de 2007 - Revisão: 1.4
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Service Pack 1
Palavras-chave: 
kbmt kbautohotfix kbsql2005sp2fix kbhotfixserver kbfix kbexpertiseadvanced kbqfe kbpubtypekc KB924291 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Pedíamos-lhe o favor de preencher o formulário existente no fundo desta página caso venha a encontrar erros neste artigo e tenha possibilidade de colaborar no processo de aperfeiçoamento desta ferramenta. Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 924291

Submeter comentários

 

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