Я делаю программу учета сотрудников в python. В этой программе пользователь может выполнять поиск имени, обязанности или образования и может видеть, например, все имена содержат «Дженнифер». Информация о сотрудниках хранится в базе данных, поэтому я использую несколько sql запросов. Например, если вы хотите добавить нового сотрудника в базу данных, моя программа запустит этот запрос:
def insert(self, name, duty, date, education):
self.cur.execute("INSERT INTO worker VALUES (NULL,?,?,?,?)", (name, duty, date, education))
self.conn.commit()
self.view()
В качестве функции поиска в качестве параметра будет указано имя обязанности, дата или образование. Если пользователь щелкнет по имени и напишет «Дженнифер», он должен увидеть сотрудников, которые в имени или фамилии содержат Дженнифер. Однако я не могу этого сделать. Я пишу этот sql запрос, и он работает:
SELECT * FROM worker WHERE name LIKE '%Jennifer%'
, но я не могу заменить часть Дженнифер именем для ввода. Я пробовал вот так, но это не работает (не возвращайте мне ничего):
def search(self, name="", duty="", date="", education=""):
self.cur.execute("SELECT * FROM worker WHERE name LIKE('%' || name=? || '%')", (name,))
rows = self.cur.fetchall()
return rows
(я пробую только имя в этой части, но я хочу сделать поисковый запрос для всех функций)