'Python SQLITE3 update column value based on where condition applied to a table

I have a SQLite table that I wanted to update. This table ('abc') already has a row inserted through some other process for id and useremail. Now, I want my query to lookup this record based on where condition (on useremail) and update the value of column logintime. I am pretty new to Sqlite so need some help in figuring it out. Code below -

creating a new table (works OK)

conn = sql.connect('/content/sample_data/userlogs.db')
c = conn.cursor()
c.execute("""CREATE TABLE IF NOT EXISTS abc (
         id INTEGER  PRIMARY KEY,
         useremail TEXT,
         logintime TEXT,
         logouttime TEXT
);
""")
conn.commit()
conn.close()

code for inserting a record (works OK)

email = ['[email protected]']
conn = sql.connect('/content/sample_data/userlogs.db')
c = conn.cursor()
c.execute('insert into abc (useremail) values(?)', email)

code for updating column logintime where value in column useremail = email:

conn = sql.connect('/content/sample_data/userlogs.db')
c = conn.cursor()
now = datetime.now()
c.execute('UPDATE abc SET logintime = ? WHERE useremail = ?', (now, email))

I am having trouble with this c.execute statement.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source