Вы хотите
c.execute("DELETE FROM employees WHERE lastName = (?)", (deleteWorker,))
=> заметить завершающую запятую после deleteWorker
, это то, что создает tuple
- Парены используются только для устранения неоднозначности, поэтому без запятой, что видит Python,:
c.execute("DELETE FROM employees WHERE lastName = (?)", deleteWorker)
, поэтому вы фактически передаете строку, когда cursor.execute()
ожидает tuple
или list
.