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()
検索機能では、名前の職務、日付、または学歴をパラメーターとして受け取ります。ユーザーが名前をクリックして「jennifer」と入力すると、名前または姓に Jennifer が含まれる従業員が表示されます。しかし、私はそれを行うことはできません。私はこの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
(この部分では名前だけを試していますが、すべての機能の検索クエリを作成したいです)