Erro de upsizing de banco de dados do MS-Access

1

Estou trabalhando no upsizing de um banco de dados MS-Access do Access 2010 para o MS-SQL 2008 (10.0.1600). Quando eu executo o Assistente de Upsizing, todas as tabelas são movidas, exceto por uma ...

A tabela que não é movida tem ~ 18.000 registros e muitos dos nomes das colunas possuem espaços. Eu não tenho certeza de como descobrir porque a mesa não está sendo movida. O erro que recebo apenas me diz que "A guia foi ignorada ou a exportação falhou". Eu não sei como obter acesso para me fornecer um erro mais útil do que isso.

Até agora, confirmei que o erro não está sendo causado por:

  • Tipos de dados inválidos (sim / não, data, etc.)
  • Espaços nos nomes das colunas
por Dave Long 21.04.2011 / 17:19

4 respostas

0

O assistente de upsizing que vem com o Access está sempre atrás da curva, já que ele só pode lidar com versões mais antigas do SQL Server.

A ferramenta apropriada para o upsizing é o Assistente de Migração do SQL Server para o Access. É muito mais flexível e muito mais inteligente sobre o que pode fazer. Ele também é atualizado para refletir a versão mais recente do SQL Server.

Com ele, você pode visualizar o que a operação de upsizing fará e corrigir problemas, se houver algum. A única coisa que descobri que não é possível é interpretar corretamente certos tipos de regras de validação em nível de campo. Caso contrário, é muito bom identificar problemas e identificar exatamente o que precisa ser alterado.

    
por 26.04.2011 / 01:35
1

Eu me deparei com um problema semelhante. Descobri que eu tinha um campo definido como incremento automático como um campo de identidade. A estrutura da tabela foi trazida para o SQL Server, mas nenhum dado foi importado. Ainda não tive a chance de ir tão longe, mas meu plano é definir a propriedade de identidade como "NO" e, depois de dividir o banco de dados, definir a propriedade como "YES". Esta é provavelmente apenas uma das muitas possibilidades.

    
por 08.11.2011 / 23:58
0

Alguma de suas outras tabelas tem espaços nos nomes das colunas? Caso contrário, tente renomear as colunas alterando os espaços para algo como sublinhados ("_") e, em seguida, use os comandos SQL "ALTER TABLE" no console do servidor MS-SQL para alterar as colunas de volta (se forem suportadas).

Mas, o uso de espaços nos nomes das colunas não é recomendado porque pode levar a todos os tipos de complicações (particularmente citando partes de comandos SQL e prevenção de ataques de injeção, etc.) e problemas, especialmente onde mais desenvolvedores estão envolvidos. Eu recomendo mudar para underscores e atualizar seu código de acordo.

    
por 21.04.2011 / 17:34
0

para sorrisos (deve ser rápido para tentar solucionar problemas) executar uma consulta de tabela contendo todos os campos, mas com nomes muito curtos nos campos de saída (por exemplo, fname: [User First Name]), conformando tudo bem, curto, uma palavra. Você terá uma tabela duplicada e poderá mexer com as atualizações de tipo de dados e assim por diante, à medida que modificar a tabela e tentar fazer o upsizing dela

espero que alguém concorde com a verdadeira limitação técnica em que você se depara, mas quando me deparo com essas coisas, acho que é melhor chegar a estruturas realmente básicas e trabalhar do meu jeito para o que eu quero fazer - pequenos passos, uma mudança de cada vez - o seu direito de questionar a precisão das mensagens de erro - recebi mensagens tão enganosas do sql e acesso especificamente - não apenas vagas, mas claramente equivocadas, erradas que tanto a mensagem de erro como o problema são tão comuns e especifico que a resposta está em todas as 5 primeiras páginas do google results OU é tão ruim, eu acabei de voltar ao básico do bare bones e vou para a coisa complexa que eu estou na verdade depois

    
por 21.04.2011 / 17:38