BUG FIREBIRD: DATAS INVERTIDAS
Estou enfrentando dificuldade com um bug que me apareceu somente hoje.
Tenho uma aplicação em VB6 que acessa um banco de dados Firebird 2.5.2 usando ADO 2.8.
O problema:
Executo uma instrução SQL SELECT para recuperar registros de uma determinada tabela que possue campos do tipo TIMESTAMP. Ao pegar o valor de um campo do tipo TIMESTAMP, verifiquei que se o valor for uma data anterior a 01/07/2014, esse valor aparece correntamente para minha aplicação (i.é, no formato dd/mm/yyyy); porém, se o valor for uma data a partir de 01/07/2014, aà o valor aparece no formato americano (mm/dd/yyyy).
Exemplo:
Caso 1:
Valor na tabela: 20/06/2014
Valor retornado: 20/06/2014
Caso 2:
Valor na tabela: 01/07/2014
Valor retornado: 07/01/2014
Preciso encontrar uma solução definitival para esse problema.
Toda ajuda e sugestões são bem-vidas.
Grato.
Tenho uma aplicação em VB6 que acessa um banco de dados Firebird 2.5.2 usando ADO 2.8.
O problema:
Executo uma instrução SQL SELECT para recuperar registros de uma determinada tabela que possue campos do tipo TIMESTAMP. Ao pegar o valor de um campo do tipo TIMESTAMP, verifiquei que se o valor for uma data anterior a 01/07/2014, esse valor aparece correntamente para minha aplicação (i.é, no formato dd/mm/yyyy); porém, se o valor for uma data a partir de 01/07/2014, aà o valor aparece no formato americano (mm/dd/yyyy).
Exemplo:
Caso 1:
Valor na tabela: 20/06/2014
Valor retornado: 20/06/2014
Caso 2:
Valor na tabela: 01/07/2014
Valor retornado: 07/01/2014
Preciso encontrar uma solução definitival para esse problema.
Toda ajuda e sugestões são bem-vidas.
Grato.
Sempre utilizei o tipo DATE para datas no firebird e nunca tive este problema.
Uma solução seria passar o valor da data como parâmetro, sem formatação.
ex:
Select codigo from tabela where dataCad = ?
.Parameters.Append .CreateParameter([Ô]dataCad[Ô], adDate, adParamInput)
.Parameters([Ô]dataCad[Ô]) = Date
Abraços
Uma solução seria passar o valor da data como parâmetro, sem formatação.
ex:
Select codigo from tabela where dataCad = ?
.Parameters.Append .CreateParameter([Ô]dataCad[Ô], adDate, adParamInput)
.Parameters([Ô]dataCad[Ô]) = Date
Abraços
Faça seu login para responder