CORRECÇÃO: Recebe uma mensagem de erro quando você usa o objeto SQL-DMO BulkCopy para importar dados para uma tabela do SQL Server

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 817081
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Bug #: 469152 (SQL Server 8.0)
importante Este artigo contém informações sobre como modificar o registro. Antes de modificar o registro, certifique-se de backup e certifique-se que você saiba como restaurar o registro se ocorrer um problema. Para obter informações sobre como fazer backup, restaurar e editar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows
Sintomas
Se você programaticamente conectar a uma instância do Microsoft SQL Server 2000 como um usuário que não é um membro da função de servidor fixa sysadmin ou de db_owner função de banco de dados fixa e, em seguida, você usa o objeto SQL Distributed Management Objects (SQL-DMO) BulkCopy para importar dados para uma tabela do SQL Server. Depois de fazer isso, você receberá uma mensagem de erro semelhante à seguinte:
Servidor: Mensagem 3704, nível 16, estado 1, linha 1
Usuário não tem permissão para executar esta operação na tabela ' Table Name '.


Servidor: Mensagem 3704, nível 16, estado 1, linha 1
Usuário não tem permissão para executar esta operação no índice ' Index Name '.
Causa
Esse problema ocorre porque a operação de cópia em massa é iniciada pelo objeto SQL-DMO BulkCopy tenta atualizar as estatísticas para a tabela do SQL Server. No entanto, para executar o comando de Estatísticas de atualização , o usuário atual deve ter administrador do sistema (sysadmin) permissões de proprietário (db_owner) do banco de dados ou.
Resolução

Informações sobre o service pack

Para resolver esse problema, obtenha o service pack mais recente para o Microsoft SQL Server 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211Como obter o SQL Server 2000 service pack mais recente

Informações sobre o hotfix

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos são listadas na acordo hora universal coordenada (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário na ferramenta Data e hora no painel de controle.
   Date         Time   Version            Size    File name   --------------------------------------------------------------   17-Mar-2003  07:38  2000.80.790.0   4,215,360  Sqldmo.dll       
anotações Devido às dependências do arquivo, o hotfix mais recente ou o recurso que contém esses arquivos também pode conter arquivos adicionais.
Para desabilitar estatísticas de atualização para BulkCopy, talvez seja necessário adicionar a entrada de registro
BCPNoUpdateStats
no seguinte caminho do Registro:
HKLM\Software\Microsoft\Microsoft SQL Server\80\Tools\DMO
Para obter informações adicionais, consulte a seção "Mais informações".
Como Contornar
Para contornar esse problema, você pode usar outro método para executar operação de cópia em massa, como o utilitário bcp, a instrução BULK INSERT Transact-SQL ou um pacote DTS.
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Esse problema não ocorre nas versões anteriores do SQL Server 2000.Esse problema foi corrigido primeiro no Microsoft SQL Server 2000 Service Pack 4.
Mais Informações
Aviso Se você usar o Editor do Registro incorretamente, você pode causar problemas sérios que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você pode resolver problemas resultantes do uso incorreto do Editor do Registro. Use o Editor do registro por sua própria conta e risco.

Essa correção funciona com uma entrada de registro DWORD, BCPNoUpdateStats. Se você ativar BCPNoUpdateStats, o comando de Estatísticas de atualização automático é desabilitado quando você importa dados. Para adicionar e para ativar a entrada de registro BCPNoUpdateStats, execute estas etapas:
  1. Inicie o Regedt32.exe.
  2. Localize a seguinte chave do Registro:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80\Tools\DMO
    Se essa chave já não existir, crie uma nova chave chamado DMO sob a chave \Tools.
  3. Na chave \DMO, adicione um valor DWORD e, em seguida, nomeie-o BCPNoUpdateStats. Defina seus dados de valor como 1.
Um valor de 0 ou chave do Registro resulta no comportamento padrão. O comportamento padrão é atualizar as estatísticas após a operação de importação.
Referências
Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
299865CORRECÇÃO: DMO BulkCopy Falha ao copiar dados quando os nomes de coluna contêm o caractere de espaço
Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do Artigo: 817081 - Última Revisão: 12/08/2015 02:20:58 - Revisão: 3.1

Microsoft SQL Server 2000 Service Pack 3

  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB817081 KbMtpt
Comentários