我有一个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' - 某种格式。