Início > Programação > Solução: SQL ERROR: Error Mapping failed

Solução: SQL ERROR: Error Mapping failed

Olá Pessoal, esta é uma dica para programadores Delphi que utilizam DBExpress.

Passei por este problema e com alguma dificuldade encontrei a solução no site da Embarcadero, um tanto obvio claro…

Se estiver usando o famoso trio TSQLDataSet + TDataSetProvider + TClientDataSet, provavelmente esse será o problema e abaixo descrevo a correção.

 

Solução:

No TSQLDataSet, a propriedade GetMetaData deve ficar como “False”.

Pronto solucionado.

 

 

Junto a isso, também tive outro problema, no ApplyUpDate, o erro é “Table Unknown”, criarei um post para este problema, mas a correção é simples, Escreva o codigo SQL todo em letras maiúsculas, e quando carregar o Fields no ClientDataSet, também faça o mesmo.

 

Grande abraço.

Espero ter esfriado a cabeça de quem estiver lendo isso agora!

CategoriasProgramação
  1. Cainan
    22/03/2010 às 10:59 | #1

    FIQUEI QUASE UMA SEMANA PRA DESCOBRIR ESSE ERRRO , E AGORA CONSEGUI!! MUITOOOOOOO OBRIGADOOOOOOOOOO

    AJUDOU DEMAISSSSSSSSSSSSSSS!!!!! VLWWWWWWWWWWWWWWWWWWWWWWW

  2. Wendell
    01/07/2010 às 16:28 | #2

    Muito obrigado Otávio!
    Só não é tão óbvio assim =), quer dizer, ‘mapping’ what?
    Abraço!

  3. Wendell
    01/07/2010 às 16:52 | #3

    Perdão, Otavino. =/

  4. Wagner
    02/08/2010 às 12:58 | #4

    Ainda não consegui conectar com meu Banco de Dadso SQL Server 2000, pois mesmo com essas opções como “False”, ele mesmo assim da o error mapping.
    Precisa mudar algo no Connection ?

  5. Elder Pereira da Silva
    19/01/2011 às 14:19 | #5

    Nossa muita pesquisa para descobrir esse erro e só com essa dica consegui resolver meu problema. Muito obrigado!

  6. Iuri
    25/01/2011 às 03:44 | #6

    Ocorreu este erro também no Delphi 7!!! Mudei a propriedade GetMetadata do SQLDataSet1 pra False e Funfou na boa… Ai eu consegui passar a propriedade Active do ClientDataSet1 para True.. Valeu

  7. José Aparecido
    03/03/2011 às 16:26 | #7

    Nossa!

    Valeu mesmo!

  8. Nilton
    05/04/2011 às 22:51 | #8

    Infelizmente não consegui resolver este erro com a propriedade GetMetaData = False.

    Uso os componentes TSQLConnection, TSQLDataSet, TDataSetProvider, TClientDataSet e o TDataSource.

    Ficou na dúvida o que pode ser ???

    • Heckel Cunha
      08/09/2011 às 10:16 | #9

      copiou as bibliotecas do firebird para a pasta system32?
      direcionou (copiou o caminho) para o VendorLib do sqlConnection para o endereço do fbClinet.dll?
      se estiver usando o Seven desinstale e reinstale o firebird, mas desta vez não instale no Program Files (Arquivo de Programas), instale direto no c:\ (raiz) deve funcionar…

  9. Sueli
    29/07/2011 às 17:56 | #10

    Obrigada pela dica!!!

  10. Heckel Cunha
    08/09/2011 às 10:11 | #11

    Muito obrigado… Valeu pela dica… estava com problemas para colocar o sistema em rede só por conta disso…
    quando colocava o caminho no sqlConnection c:\sistema\dbase\tabelas.fdb funcionava, mas quando colocava o caminho 192.168.1.1:c:\sistema\dbase\tabelas.fdb não… agora rodou redondo…
    Obrigado!

  11. eliseu
    23/09/2011 às 09:11 | #12

    Para maquina local funcionou perfeitamente, mas o erro continua quando tento acessar via rede, ou seja, passando caminho por exemplo:
    Servidor/3050:C:\Banco\MyBanco.FDB ou
    Servidor:C:\Banco\MyBanco.FDB
    Alguém sabe porque ???

  12. rogério
    29/11/2011 às 15:41 | #13

    Funcionou blz, muito obrigado

  13. Ednilson
    30/05/2012 às 20:33 | #14

    Bem pessoal, passei por uma situação idêntica com essa mesma falha, mas não vinha a ser o caso em mudar o getMetaData até porque sempre uso False… resultado, descobrir que no meu caso eu criei uma storeprocedure com tamanho de campo 15 e depois eu mudei para 30 na tabela, e esqueci de mudar nessa Store, resultado, quando houve um caso em que precisei usar essa Store ( que me trazia uma consulta com somatório e o nome do banco ), aí apareceu o erro de mapping… foi quando após muita tentativa acabei descobrindo que um dos registros com nome do Banco tinha tamanho superior a 15, aí dava a falha, foi só alterar o tamanho na store e pronto.

    espero ter colaborado!

    Ednilson

  1. Nenhum trackbacks ainda.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Sair / Alterar )

Imagem do Twitter

You are commenting using your Twitter account. Sair / Alterar )

Foto do Facebook

You are commenting using your Facebook account. Sair / Alterar )

Connecting to %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.