PostgreSQL 数据时间类型的最佳数据类型

Kam*_*mil 1 python sql postgresql

其实我有:

CREATE TABLE public.user(
  id BIGSERIAL NOT NULL,
  nick VARCHAR(255) NOT NULL,
  email VARCHAR(255) NOT NULL,
  born DATE,
  joined DATE,
  tags text[]
);
Run Code Online (Sandbox Code Playgroud)

我想选择最佳选项来节省注册时间和出生数据。我搜索了互联网,但没有找到任何好的结果。也许使用python中的时间更好,然后将其插入到postgres中?

The*_*ler 5

对于出生日期,您不需要一天中的时间,因此 aDATE是合适的。

对于注册日期,您可能希望保存日期和时间。在这种情况下TIMESTAMP会更合适。

避免使用VARCHAR来存储日期。由于它不验证任何内容,因此它允许您存储错误信息,并且您将无法轻松计算关于它们的任何信息。例如:

  • 错误的字符串值 #1::35-jan-2017此日期不存在。
  • 错误的字符串值 #2:10-12-99是 12 月 10 日还是 10 月 12 日?