Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

demytrius

Dados Gravados Incorretamente

Recommended Posts

Olá

 

Estou com um problemão e qualquer ajuda que vocês possam me dar será muito útil.

Meu programa em delphi utiliza os seguintes componentes para cadastrar clientes:

SQLConnection

Client Dataset

SQL Dataset

Dataset Connection

Datasource.

O arquivo BD.fdb quando aberto em ferramentas tipo IBconsole ou IBexpert mostra apenas 2 registros na tabela clientes, enquanto no delphi ele carrega os 51 registros no DbGrid.

 

O que fazer?

Desde já, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá... Sua query no delphi pode estar fazer joins com outras tabelas, por isso ele retornará mais registros... Provavelmente um left join.

 

Verifique a query ligada no grid, tbm verifique se a sua conexão da aplicação está apontando para o mesmo banco de dados do IBExpert.

 

[]'s

Everson Novka

http://www.eversonnovka.com

 

Olá

 

Estou com um problemão e qualquer ajuda que vocês possam me dar será muito útil.

Meu programa em delphi utiliza os seguintes componentes para cadastrar clientes:

SQLConnection

Client Dataset

SQL Dataset

Dataset Connection

Datasource.

O arquivo BD.fdb quando aberto em ferramentas tipo IBconsole ou IBexpert mostra apenas 2 registros na tabela clientes, enquanto no delphi ele carrega os 51 registros no DbGrid.

 

O que fazer?

Desde já, obrigado!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, não estou utilizando nenhuma query. por conta de outro erro que me impossibilitou usar queries.

 

quando tentava utilizar uma query com um dataset próprio eu tinha a seguinte mensagem "This is not permitted in an unidirectional database."

 

Mas com relação ao primeiro erro citado, eu tenho todos os registros com todas as informações que a tabela pede (nome, cpf, telefone, etc...).

Como eu verifico se o ibConsole está contando erroneamente os registros?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeira questão: os dados que exibe no dbgrid são carregados de apenas uma tabela? Se sim, é da mesma base de dados que está observando pelo IBConsole? Não criou por acaso alguma base de testes e outra para rodar o programa?

 

Se os dados são carregados de duas ou mais tabelas, alguma delas tem possibilidade de repetir os dados N vezes? Como está fazendo para selecionar os dados que carrega? Explique melhor o que está no seu programa que vai facilitar para resolver.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeira questão: os dados que exibe no dbgrid são carregados de apenas uma tabela? Se sim, é da mesma base de dados que está observando pelo IBConsole? Não criou por acaso alguma base de testes e outra para rodar o programa?

 

Se os dados são carregados de duas ou mais tabelas, alguma delas tem possibilidade de repetir os dados N vezes? Como está fazendo para selecionar os dados que carrega? Explique melhor o que está no seu programa que vai facilitar para resolver.

 

[]'s

 

Olá Chrnos,

então, no DBGRID é carregada as informações do DataSource, que busca as informações da tabela em um Client DataSet.

Fui também instruído pela pessoa que me orientou na criação deste BD para colocar os seguintes componentes também:

Dataset Provider e SQL Dataset. cuja função eu não entendi muito bem.

Posso upar o código fonte do programa para que alguem se disponha analisar e apontar meus erros.

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu perguntei na primeira questão é se seu select carrega os dados da grid trazendo dados de uma tabela só ou informações combinadas de 2 ou mais tabelas...

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu perguntei na primeira questão é se seu select carrega os dados da grid trazendo dados de uma tabela só ou informações combinadas de 2 ou mais tabelas...

 

[]'s

 

Sim, apenas uma tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, se os dois programas estão realmente acessando a mesma base de dados e a mesma tabela, não vejo motivo de porque um trazer apenas 2 registros e o outro 51... você tem certeza que os dois softwares apontam para o mesmo BD? Como está fazendo as consultas nos dois casos, qual a sql que roda no delphi e qual a que roda no IBConsole?

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio ter descoberto a origem do problema.

A configuração do componente SQL Connection não apontava para o real local do banco de dados e a conexão que eu criei estava toda errada.

Porém tenho estes 100 registros quase que foram gravados em algum lugar, gostaria de poder encontrá-los!

Mas tudo que encontrei foi o arquivo da conexão "<nome>.LCK"

Como posso descobrir aonde os dados foram gravados?

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.