PgInterval class

Valor do tipo interval do PostgreSQL, sem perda de informação.

O PostgreSQL guarda meses, dias e microssegundos separadamente: um mês não tem duração fixa e um dia pode ter 23 ou 25 horas quando há mudança de horário de verão, por isso esses valores não cabem num Duration.

É o tipo devolvido ao decodificar interval (padrão desde a 3.0.0; DecodingSettings(interval: IntervalDecoding.duration) volta a devolver Duration) e é aceito como parâmetro de consultas, assim como Duration.

Implemented types

Constructors

PgInterval({int months = 0, int days = 0, int microseconds = 0})
const
PgInterval.fromDuration(Duration duration)
Cria a partir de um Duration (apenas a parte de tempo).

Properties

days → int
Dias.
final
hashCode → int
The hash code for this object.
no setteroverride
isTimeOnly → bool
Indica se o valor tem apenas a parte de tempo (sem meses nem dias).
no setter
microseconds → int
Parte de tempo, em microssegundos.
final
months → int
Meses (12 meses = 1 ano).
final
postgresTypeName → String
Nome do tipo usado no cast quando o valor é inserido no SQL (por exemplo interval), ou null para não fazer cast.
no setteroverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

compareTo(PgInterval other) → int
Compara como o PostgreSQL: meses valem 30 dias e dias valem 24 horas.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDuration() → Duration
Converte para Duration, contando cada dia como 24 horas.
toPostgresText() → String
Texto aceito pela função de entrada do tipo no PostgreSQL.
override
toString() → String
Texto no formato de saída padrão do PostgreSQL (IntervalStyle postgres), por exemplo 1 year 2 mons 3 days 04:05:06.789.
override

Operators

operator ==(Object other) → bool
The equality operator.
override