Conversão de tempo UTF / unix no acesso

1

Eu sou bastante bom com acesso / excel / etc. No entanto eu estou correndo em uma parede de tijolos com um banco de dados que eu consultar regularmente para obter informações. Ele possui campos de data / hora que são rastreados no formato de hora do UNIX (número de segundos de 1/1/1970).

Minha meta final é para um usuário definir uma data de início e uma data de término que serão passadas para uma consulta de acesso como variáveis para retornar todas as linhas entre a data de início e de término.

Agora, minha solução alternativa é importar todas as linhas e criar uma coluna separada usando Format e formatar a data / hora da hora do UNIX localmente em uma data curta na qual eu possa filtrar facilmente. No entanto, como esperado, isso é terrivelmente lento, pois a consulta precisa importar todas as linhas do banco de dados externo e depois calcular o campo de data / hora localmente antes de exibir os resultados.

Eu sei que tem que haver uma maneira de passar a consulta para o banco de dados externo, mas eu não sei o que a sintaxe vai ser (e uma vez que é descoberto como inserir as variáveis temporárias na sintaxe ).

    
por theman 07.04.2012 / 03:51

1 resposta

1

você pode simplesmente passar o número para sua consulta.
Para converter um valor de Data / Hora do Access para unix tempo da época, DateDiff("s", DateSerial(1970, 1, 1), YourDate) fornecerá a figura que você precisa

SQLString = "SELECT * FROM YourTable WHERE Time < " & DateDiff("s", DateSerial(1970, 1, 1), YourDate)

Espero que você tenha uma ideia de como criar a instrução SQL que você precisa

    
por 08.06.2012 / 16:47