使用python连接进行用户输入匹配的SQL查询

2024-09-24 00:23:28 发布

您现在位置:Python中文网/ 问答频道 /正文

def showPatient():

    patient_lname = input("\nEnter the last name of the patient "
                    "you would like to search for: \n")

    query = c.execute("SELECT CONCAT(fname, " ", mi, " ", lname) "
                  "FROM Patients WHERE lname LIKE ?)", (patient_lname,))

在showPatient中提示错误消息

“从我喜欢的病人那里来的?”,(病人姓名)

sqlite3.OperationalError:靠近“,”:语法错误

^{pr2}$

Tags: ofthetonameyouinputdeflike
1条回答
网友
1楼 · 发布于 2024-09-24 00:23:28

您使用的是以"分隔的Python字符串。在这个特殊的execute()调用中,有四个调用;结果SQL语句如下所示:

SELECT CONCAT(fname, , mi, , lname)
FROM Patients WHERE lname LIKE ?)

在SQL中,应该用'来分隔字符串。(并且连接字符串的标准SQL方法是^{} operator,并且有一个多余的)。)

相关问题 更多 >