Python Postgres时间戳不接受2017-01-01T23:00:00-00:00
使用Python3和psycopg2在Jupyter中工作,将csv加载到psql中。前两列是我不太熟悉的ISO格式。是否有可接受的简单数据类型:Python Postgres时间戳不接受2017-01-01T23:00:00-00:00,python,python-3.x,postgresql,datetime,psycopg2,Python,Python 3.x,Postgresql,Datetime,Psycopg2,使用Python3和psycopg2在Jupyter中工作,将csv加载到psql中。前两列是我不太熟悉的ISO格式。是否有可接受的简单数据类型: 2017-01-01T23:00:00-00:00 我试过日期、时间戳、不带时区的时间戳、带时区的时间戳。为了将时间戳转换为更友好的格式,我需要预处理吗 我想我可以做一些像- cur.execute(""" CREATE TABLE test( id integer PRIMARY KEY, intervalbegin_gmt timestamp
2017-01-01T23:00:00-00:00
我试过日期、时间戳、不带时区的时间戳、带时区的时间戳。为了将时间戳转换为更友好的格式,我需要预处理吗
我想我可以做一些像-
cur.execute("""
CREATE TABLE test(
id integer PRIMARY KEY,
intervalbegin_gmt timestamp,
intervalend_gmt timestamp, ...
获取错误-
DataError: invalid input syntax for integer: "2017-01-01T23:00:00-00:00"
字符串是正确的时间戳输入文字:
select '2017-01-01T23:00:00-00:00'::timestamp
timestamp
---------------------
2017-01-01 23:00:00
(1 row)
问题是您正试图将该列导入整数列id
前两列是ISO格式
因此,该表应如下所示:
CREATE TABLE test(
intervalbegin_gmt timestamp,
intervalend_gmt timestamp,
...
如果需要,可以在复制数据后添加主键。Awesome,将主键移到末尾。工作得很有魅力!