Python中的Postgresql查询中的日期时间格式无效

时间:2016-12-05 09:17:47

标签: python postgresql python-3.x

我有一个txt文件,其中包含以下行:

Date=28/11/2016
Time=12:16:06

我想创建SQL查询,所以我需要以真实的方式格式化它们。

connect = psycopg2.connect(database='eco_db', user='postgres', host='localhost', password='1111', port=5433)
cursor = connect.cursor()

entry=list()
for line in infile:
    line = line.strip()
    value = line.split('=', 1)
    entry.append(value[1])

sql_query=str(entry[0] + ' '+entry[1])


SQL = '''
INSERT INTO eco.noise (time) VALUES (%s);

'''
data = (sql_query)
cursor.execute(SQL, data)

connect.commit()
cursor.close()
connect.close()

但是sql_query的格式错误。 我应该使用datetime包吗? 非常感谢。

ERROR:

    cursor.execute(SQL, data)
psycopg2.DataError: date/time field value out of range: "28/11/2016 12:16:06"
LINE 2: ...ERT INTO eco.noise (time_noise) VALUES ('28/11/201...
                                                             ^
HINT:  Perhaps you need a different "datestyle" setting.

解决方案:使用datetime.strptime(YOUR_DATE,'%d /%m /%Y'),其中'%d /%m /%Y' - 某种格式。

0 个答案:

没有答案