Add support for timestamp with time zone #409
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds support for the
timestamp with time zone
type. This is partof the SQL standard, but not supported explicitly by SQLite as far as I
can tell. As such I've made it a PG specific type for now.
timestamp with time zone does not actually mean that a time zone is
stored. It instead means that when dealing with strings, Postgres will
no longer ignore the time zone portion. It will convert the time zone to
UTC for storage. When transmitted as text, it will be converted to the
database's local time zone. When transmitted as binary, it will be sent
as UTC.
As such, I've provided
ToSql
implementations for basically all flavorsof
DateTime
, but I've only provided aFromSql
implementation forDateTime<UTC>
andNaiveDateTime
. I have not provided anyimplementation for
std::time::SystemTime
, as it implies local timezone for the machine and we do not have the tools to handle the
conversion in the standard library.
Fixes #106.
Fixes #295.
Fixes #402.