Я уверен, что есть простой способ сделать это, но я не могу его найти.
Я читаю данные из файла CSV и вставляю их в некоторую таблицу SQL. Записи могут содержать данные во всех полях или нет, поэтому, если запись уже была вставлена, я хочу обновить поля, у которых есть значения, но не те, которые не имеют.
records = [
('123456789', '', 'smith', '', ''),
('123456789', '', '', '+549-11-555-9999', 'jsmith@example.com'),
('123456789', 'john', 'smith', '', '')]
for p in records:
sql = "UPDATE person(name,lastname,phone,email) VALUES(%s,%s,%s,%s,%s) WHERE id=%s"
cur.execute(sql,(p[1], p[2], p[3], p[4], p[5], p[0]))
connection.commit()
, если я выполнив это, я получаю пустые значения в полях телефон и электронная почта человека '123456789'.
Как я могу обновить только поля со значениями?
Заранее спасибо!
Даниел //