Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等_Postgresql_Sqlite_Sqldatatypes - Fatal编程技术网

Postgresql 我尝试将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

我尝试将SQLite数据库转换为Postgres,我不知道Postgres数据库的日期时间是否相等 全文如下:

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));

查找可用的数据类型