itTime

Aceita uma hora do dia. Os espaços são removidos da entrada antes da análise (exceto o espaço entre os dígitos da hora e o sufixo AM/PM, que é tratado separadamente).

Formatos aceites

Básico

Formato Exemplo
hh:mm 09:30
hh:mm:ss 09:30:00
hh:mm:ss.f a hh:mm:ss.ffffff 09:30:00.5 → 500 ms

O separador : é sempre aceite. O separador de tempo TimeSeparator do tempo de execução também é aceite, a menos que seja ., caso em que entraria em conflito com o separador de segundos fracionários; nesse caso, apenas : é válido.

Segundos fracionários

São aceites 1 a 6 dígitos após o separador .. O valor é normalizado para milissegundos (0–999): menos de 3 dígitos são preenchidos à direita com zeros (.5 → 500 ms); mais de 3 dígitos são truncados (.1234 → 123 ms). Um ponto final sem dígitos, ou mais de 6 dígitos fracionários, devolve ERR_INVALID_FORMAT. Zero milissegundos (.000) produz um literal simples hh:mm:ss sem parte fracionária.

A combinação de AM/PM com segundos fracionários não é suportada e devolve ERR_INVALID_FORMAT.

AM/PM

Aceite em configurações regionais em que as variáveis de tempo de execução TimeAMString e TimePMString não estejam vazias (configurações regionais de 12 horas). São reconhecidas tanto a forma anexada (9:30AM) como a separada por espaço (9:30 AM). O literal SQL é sempre de 24 horas.

Entrada: 2:30 PM   →   Values[0]: 14:30:00
 SQLValues[0] (ElevateDB): TIME '14:30:00'

Values[]

A exibição no formato de 24 horas string no formato hh:mm:ss, com .fff acrescentado quando os milissegundos são diferentes de zero.

09:30 →   09:30:00
09:30:15.5  →   09:30:15.500

SQLValues[]

O literal de tempo SQL depende do dialeto. Consulte dialetos SQL para ver a tabela completa de formatos.

09:30:15.500 →
  sqlElevateDB, 
  sqlMySQL, 
  sqlPostgreSQL: TIME '09:30:15.500'
  sqlFirebird: TIME '09:30:15.5000'  (ms × 10)
  sqlDBISAM,
  sqlMSSQLServer, 
  sqlSQLite: '09:30:15.500'
  sqlOracle: TO_TIMESTAMP('09:30:15.500','HH24:MI:SS.FF3')
  sqlAccess: #09:30:15# (ms omitida)
  sqlBDEParadox: "09:30:15" (ms omitida)

Intervalo

Entrada: 08:00~17:00
  →   otRange
  →   BETWEEN TIME '08:00:00' AND TIME '17:00:00'  (sqlElevateDB)

A hora à esquerda não pode ser posterior à hora à direita; caso contrário, é devolvido ERR_INVALID_RANGE. A ordem é determinada pela comparação lexicográfica do hh:mm:ss[.fff] strings, o que equivale à ordem cronológica, uma vez que todos os campos são preenchidos com zeros até uma largura fixa.

(C) 2026 Easygate, Lda