Compartilhar via


Solucionando problemas de geração de dados

Você pode enfrentar os seguintes problemas ao trabalhar com planos de geração de dados:

  • Não é possível em em aberto o plano de geração de dados

  • Geração de dados Falha ao verificar restrições for violadas

  • Não é possível atribuir a expressão Regular dados gerador colunas de tipo definido pelo usuário

  • Não é possível gerar dados para tabelas com disparadores de excluir

  • Problemas com a dados limite geradores

Não é possível em em aberto o plano de geração de dados

Se não for encontrado um gerador de dados que é atribuído a uma coluna em um plano de geração de dados existente, não é possível em em aberto o plano e a seguinte mensagem de erro é exibida:

Falha ao carregar FileName .dgen.Não é possível localizar um gerador de disponível com o tipo de GeneratorName.Corrija o erro editando e recarregar o arquivo dgen manualmente.

Estes são alguns possíveis causas e resoluções do erro:

  • O nome da classe do gerador de dados foi alterado.Se apenas o nome tiver alterar d, você pode em aberto o arquivo .dgen em um editor de texto e alterar o XML manualmente.Você deve alterar o nome do gerador de dados para as colunas afetados para o novo nome.

  • O gerador de dados foi substituído.Você pode em em aberto o arquivo .dgen em um editor de texto e altere o XML manualmente.Nesse caso, você deve para remover o elemento <columnconfig>completo (e todos os elementos de sub-rotina) do XML para todas as colunas afetados.em em aberto o plano de geração de dados em Visual Studio e aceitar as alterações de esquema. Os geradores de dados padrão são atribuídos a colunas afetadas.Você também deverá selecionar novamente as colunas afetadas para incluí-las no plano de geração de dados.Para obter mais informações, consulte Como: Especificar colunas para a geração de dados.

  • A entrada para o gerador de dados é removida do arquivo extensions.xml.Você deve alterar o arquivo extensions.xml e adicione um elemento <extensions>para o gerador de dados.Você deve fechar e reabrir o Visual Studio para que a alterar tenha efeito.

  • O arquivo .dll e o arquivo extensions.xml estão fora de sincronização.O gerador de dados não está presente no arquivo .dll que é definido no arquivo extensions.xml.Você deve reimplantar a versão correta do assembly e o arquivo Extensions.xml para corrigir o problema.Você deve fechar e reabrir o Visual Studio para que a alterar tenha efeito.

Geração de dados Falha ao verificar restrições for violadas

Quando você gera dados para uma coluna que tem um restrição CHECK, a operação falhará se os dados serão gerados que viola a restrição.Você pode usar o Visualização de geração de dados janela para ver se os dados violam a restrição antes de executar o plano.Para obter mais informações, consulte Como: Visualizar um plano de geração de dados.

Para corrigir esse problema, você deve usar um dos seguintes métodos:

  • Use o Min e Max propriedades para controlar como os dados são gerados. Por exemplo, suponha que você tenha uma tabela que possui duas colunas nomeadas de StartDate e EndDatee uma restrição de verificação que requer StartDate preceder EndDate. Você pode conjunto o Max propriedade das StartDate coluna para um valor que seja menor que o Min propriedade das EndDate coluna para atingir seu meta. Para obter mais informações, consulte Especificar detalhes de geração de dados para uma coluna.

  • Usar os dados limite gerador.Para obter mais informações, consulte A dados limite gerador.

  • Use um gerador de dados personalizados.Para obter mais informações, consulte Criando geradores de dados personalizados.

Não é possível atribuir regular expressão dados gerador para colunas de tipo definido pelo usuário com restrições exclusivas

Ao tentar atribuir um gerador de dados a uma coluna que tem uma restrição exclusiva, a lista de geradores disponível exibe somente os geradores podem produzir valores exclusivos.Como o gerador de expressão regular não é garantido para produzir valores exclusivos, você não pode usá-la para preencher uma coluna de tipo definido pelo usuário que possui uma restrição exclusiva.Para gerar dados para uma coluna de tipo definido pelo usuário com uma restrição exclusiva, você deve usar o gerador de ligação de dados ou um gerador de dados personalizados.Para obter mais informações, consulte A dados limite gerador e Criando geradores de dados personalizados.

Não é possível gerar dados para tabelas com disparadores de excluir

Algumas tabelas têm disparadores que impedem que você exclua as linhas naquelas tabelas.Se você tentar excluir linhas dessa tabela, o disparar traz de volta a operação de exclusão.Não é possível gerar dados normalmente para essa tabela ou para uma tabela que faz referência a essa tabela.Por exemplo, não é possível gerar dados normalmente para a tabela Funcionários no banco de dados AdventureWorks.

Para gerar dados para essa tabela, use um dos seguintes métodos:

  • Excluir o disparar, executar o plano de geração de dados e adicionar novamente o disparar.

  • Execute o plano de geração de dados.Quando você for solicitado para desmarcar o Sumário das tabelas antes de novas linhas são inseridas, clicar Não.Os novos dados que você gerar ao quaisquer dados existentes na tabela para que o disparar de excluir não ocorre.Esse método pode causar resultados imprevisíveis e erros poderão aparecer se qualquer uma das colunas possui uma restrição exclusiva.

Problemas com a dados limite geradores

Se houver falha de geração de dados para uma ou mais colunas para o qual você tenha especificado um dados acoplados gerador, a coluna de saída do gerador no Detalhes da coluna janela exibe "Sem saída" ou "Sem saída Coercible." As seções a seguir descrevem os motivos para esse tipo de falha de geração de dados.

Nenhuma saída

Se a coluna saída gerador exibe "Sem saída", a demonstrativo selecionar que você especificou na propriedade consulta seleção provavelmente está incorreta.Como a demonstrativo selecionar pode ser difícil ver no Propriedades janela, convém copiar e colar a demonstrativo no editor do Transact-SQL (T-SQL) para verificar se a demonstrativo está correta.

Nenhuma saída Coercible

Se a coluna saída gerador exibe "Sem saída Coercible", o tipo de dados que não pode ser forçada a demonstrativo selecionar retorna o tipo de dados para a coluna para o qual você está gerando dados.Por exemplo, se desejar gerar dados para uma coluna do tipo INT, a demonstrativo selecionar a seguir faria com que "Não Coercible saída" seja exibida:

SELECT RAND() * (column1 - column2)  AS Column1 FROM Table1

Você deve atualizar a demonstrativo selecionar para retornar dados é coercible INT, da seguinte maneira:

SELECT CAST(RAND() * (column1 - column2) AS INT)  AS Column1 FROM Table1

Para obter mais informações sobre como selecionar e outras instruções T-SQL, consulte "Referência Transact-SQL" noSite da Microsoft.

Consulte também

Conceitos

Visão geral da terminologia do banco de dados edição

Outros recursos

Gerar dados com geradores de dados