Postgresql 我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等
我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等 全文如下:Postgresql 我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等,postgresql,sqlite,sqldatatypes,Postgresql,Sqlite,Sqldatatypes,我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等 全文如下: CREATE TABLE log ( id SERIAL PRIMARY KEY NOT NULL UNIQUE, date DATETIME, msg TEXT ); SQLite没有为存储日期而预留的存储类 和/或时间。相反,SQLite的内置日期和时间函数 能够将日期和时间存储为文本、实数或整数 价值观: 文本为ISO8601字符串(“YYYY-MM-DD HH
CREATE TABLE log
(
id SERIAL PRIMARY KEY NOT NULL UNIQUE,
date DATETIME,
msg TEXT
);
SQLite没有为存储日期而预留的存储类
和/或时间。相反,SQLite的内置日期和时间函数
能够将日期和时间存储为文本、实数或整数
价值观:
文本为ISO8601字符串(“YYYY-MM-DD HH:MM:SS.SSS”)。像朱利安一样真实
day number,自11月12日格林威治中午以来的天数
公元前244714年,根据公历公历。整数
作为Unix时间,自UTC 1970-01-01 00:00:00以来的秒数
取自
但在Postgres中,您可以使用timestamp/timestamtz数据类型,这很容易在上面演示
表代码似乎也很奇怪
id SERIAL PRIMARY KEY NOT NULL UNIQUE
为什么要同时使用主键和唯一键
您可以在Postgres中使用以下代码
CREATE TABLE log
(
id SERIAL PRIMARY KEY,
date timestamp,
msg TEXT
);
您可以使用Postgresql,它还存储时间。此外,对于
msg
的数据类型,您可以使用VARCHAR(n)
而不是TEXT
,除非您不知道该列中存储的值的最大长度:
CREATE TABLE log (id SERIAL PRIMARY KEY, date DATE, msg VARCHAR(255));
查找可用的数据类型