У меня есть некоторые данные, я хочу, чтобы вставить в таблицу в Netezza:питона datetime.date не соответствует Дате SQL
import pyodbc
data=[['GZ', datetime.date(2017, 2, 8), 19.7, 10.7, 0, '1级'],
['GZ', datetime.date(2017, 2, 9), 16.3, 9.7, -1, '微风'],
['GZ', datetime.date(2017, 2, 10), 16.0, 10.0, -1, '微风']]
conn = pyodbc.connect("DRIVER={NetezzaSQL}; SERVER=**;DATABASE=weather; UID=**; PASSWORD=**;")
cur = conn.cursor()
for i in data:
cur.execute("""
insert into WEATHER_INFO(location,weather_date,high_tempature,low_tempature,weather,wind)
values(\'%s\',%s,%s,%s,%s,\'%s\')
""" % (i[0], i[1], i[2], i[3], i[4], i[5]))
conn.commit()
cur.execute('select * from WEATHER_INFO')
print(cur.fetchall())
cur.close()
conn.close()
Я получаю некоторую ошибку:
pyodbc.Error: ('HY000', "[HY000] ERROR: Attribute 'WEATHER_DATE' is of type 'DATE'
but expression is of type 'INT4'\n\tYou will need to rewrite or cast the expression (46)
(SQLExecDirectW)")
это структура таблицы:
create table weather(
location varchar(20),
weather_date date,
high_tempature float(4,1),
low_temputare float(4,1),
weather int(11),
wind varchar(20)
);
Я знаю, что python datime.date должен соответствовать дате SQL. Я не получаю ответ, который хочу получить через поиск stackoverflow. Итак, как я должен решить этот вопрос?