CORRECÇÃO: A utilização do fornecedor de Jet consultar um ficheiro de texto ligada de servidor do SQL Server pode ser muito lenta

Traduções de Artigos Traduções de Artigos
Artigo: 290415 - Ver produtos para os quais este artigo se aplica.
N.º DE BUGS: 236329 (SHILOH_BUGS)
N.º DE BUGS: 236615 (SHILOH_BUGS)
N.º DE BUGS: 352865 (SHILOH_BUGS)
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Quando utiliza o fornecedor de OLEDB Jet (OLE DB Provider for Jet [texto IISAM]) para aceder a um ficheiro de texto de um servidor ligado do SQL Server, a consulta poderá demorar muito tempo. O desempenho das consultas lenta só ocorre quando existe um grande número de colunas no ficheiro de texto.

Causa

O fornecedor de OLEDB do Jet está a consultar o Jet Property Manager numa base de propriedade por propriedade para cada coluna. Iniciar com o Jet 4.0 Service Pack 5 (SP5) a consulta é executada num modo em massa, que acelera a consulta consideravelmente.

Resolução

Para resolver este problema, obtenha o service pack mais recente do Microsoft SQL Server 2000. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
290211INF: How to Obtain the Latest SQL Server 2000 Service Pack
Este problema foi corrigido na edição mais recente do Jet Service Pack. Para obter informações adicionais sobre como obter a versão mais recente do motor de base de dados Jet 4.0, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
239114Como: Obter o Service Pack mais recente para o motor de base de dados Microsoft Jet 4.0

Como contornar

Para contornar o problema, utilize um fornecedor diferente para consultar o ficheiro de texto do SQL Server.

Ponto Da Situação

A Microsoft confirmou que este é um problema no Microsoft SQL Server 2000. Este problema foi corrigido pela primeira vez no SQL Server 2000 Service Pack 1.

Mais Informação

O computador deixa de responder (não reage) quando o SQL Server chama IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS).

Passos para reproduzir o comportamento

Para reproduzir o comportamento, execute o código de exemplo que se segue.

Nota : Este exemplo pressupõe que o ficheiro C:\MyDir\TextFile.txt tem 255 colunas.
exec sp_addlinkedserver
 @server = 'My Documents',
 @provider = 'Microsoft.Jet.OLEDB.4.0',
 @srvproduct = 'OLE DB Provider for Jet (Text IISAM)',
 @datasrc = 'c:\MyDir\',
 @provstr = 'Text'
go
exec sp_addlinkedsrvlogin 'My Documents', false, NULL, 'admin'
go
SELECT * FROM [My Documents]...[TextFile#txt] 
go
exec sp_droplinkedsrvlogin 'My Documents', null
exec sp_dropserver 'My Documents'
go
				

Propriedades

Artigo: 290415 - Última revisão: 13 de novembro de 2003 - Revisão: 4.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
Palavras-chave: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB290415 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). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 290415

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