Fórum Problemas p/gravar no banco(Firebird) #324864

06/07/2006

0

Prezados Colegas,

Estou desenvolvendo minha primeira aplicação utilizando o Firebird com DBExpress(Delphi 7) e o problema q está ocorrendo é o seguinte:
Tenho 2 tabelas, ´Cliente´ e ´Visita´ fiz um Join na minha Query de clientes da seguinte forma:
SELECT
CLI.CLI_CODIGO,
CLI.CLI_NOME,
CLI.CLI_ENDERECO,
CLI.CLI_IDENTIDADE,
CLI.CLI_CPF,
CLI.CLI_ANDAR,
CLI.CLI_SALA,
CLI.CLI_CONTATO,
CLI.CLI_REINGRESSO,
CLI.VIS_CODIGO,
VIS.VIS_DATA,
VIS.VIS_HORA
FROM
CLIENTE CLI
INNER JOIN VISITA VIS ON VIS.VIS_CODIGO = CLI.VIS_CODIGO
WHERE
CLI.CLI_CODIGO = :CLI_CODIGO

E todos os campos foram adicionados no ClientDataSet. Na hora em que eu mando gravar no banco, está dando o erro: ´Column unknown VIS_DATA at line 1, column 8.´

Mas o campo está lá na query e no clientdatset, esqueci de algo? O q pode está errado?
Abçs


Fabiano_aprendiz

Fabiano_aprendiz

Responder

Posts

06/07/2006

Marcio.theis

São duas tabelas diferentes, distintas, vc deveria inserir na de Cliente um registro e na de Visita tb, inserindo nas duas ao mesmo tempo acredito que naum vai conseguir.


Responder

Gostei + 0

06/07/2006

Fabiano_aprendiz

Mas o estranho é q estou seguindo os exemplos de uma vídeo-aula q tenho aqui, aonde é feito dessa forma, e no exemplo funciona...


Responder

Gostei + 0

06/07/2006

Edineidaniel

Olá Fabiano,

Te aconcelho a não usar referências para os nomes da tabelas... use somente os nomes...

Exemplo:

SELECT
CLIENTE.CLI_CODIGO,
CLIENTE.CLI_NOME,
CLIENTE.CLI_ENDERECO,
CLIENTE.CLI_IDENTIDADE,
CLIENTE.CLI_CPF,
CLIENTE.CLI_ANDAR,
CLIENTE.CLI_SALA,
CLIENTE.CLI_CONTATO,
CLIENTE.CLI_REINGRESSO,
CLIENTE.VIS_CODIGO,
VISITA.VIS_DATA,
VISITA.VIS_HORA
FROM
CLIENTE
INNER JOIN VISITA ON (VISITA.VIS_CODIGO = CLIENTE.VIS_CODIGO)
WHERE
CLIENTE.CLI_CODIGO = :CLI_CODIGO


OBS.: Espero que você esteja querem gravar um cliente.... certo... pois caso você queira gravar uma visita, ai esta tabela deve estar no ´from´ e não da de clientes....

t+
Edinei


Responder

Gostei + 0

06/07/2006

Eniorm

Olá Fabiano, Te aconcelho a não usar referências para os nomes da tabelas... use somente os nomes...



Amigos, eu estou acostumado a usar referências para nomes de tabelas, ex:

FROM
CLIENTES C,
PEDIDOS P,
ITEM_PEDIDOS IP,
ETC....

e nunca tive problemas....

no entanto como o camagada recomendou não usar, fiquei curioso pra saber o porque???

Abraço


Responder

Gostei + 0

11/07/2006

Steve_narancic

Temos que apenas tormar o cuidado ao usarmos referencia, de se usar a mesma referencia para todos os campos da tabela, mais a menos como abaixo:

Select C.NOME, CLIENTES.NOME
From CLIENTES C


Pode ocorrer o erro em que ´CLIENTES.NOME´ não pode ser encontrado.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar