Я пытаюсь обновить Count=Count+1
, если src_ip
уже существует, иначе вставить в таблицу.
Я смог сделать это с UPSERT успешно:
INSERT INTO result('min(_time)', src_ip) VALUES(?,?)ON CONFLICT(src_ip) DO UPDATE SET Count=Count+1;
Я ищу другой способ сделать это без использования UPSERT .Я пробовал это :
# Import csv to SQLite
with open('result5.csv', 'r') as f:
dr = csv.DictReader(f)
for i in dr:
c.execute("UPDATE result SET Count = Count + 1 WHERE src_ip = ?", (i['src_ip'],))
if c.rowcount == 0:
c.execute("INSERT INTO result ('min(_time)', src_ip, Count) VALUES (?,?,1)",
(i['min(_time)'], i['src_ip']))
Скрипт работает без ошибок.Но я не получаю желаемого результата.Это ничего не возвращает к сожалению.Я не уверен, что я делаю здесь неправильно, почему я не могу UPDATE
или INSERT
?
Спасибо.