我不确定为什么在测试此功能时出现此错误。有人可以帮我解决这个问题吗?
cur.execute(q, args)
sqlite3.OperationalError: near "FROM": syntax error
这是我想要的输出:
print(get_course_time(db, "MGEB02H3F"))
# [('MGEB02H3F', '214', '17-12-14', '14:00'), ('MGEB02H3F', '215', '17-12-14', '14:00'),
# ('MGEB02H3F', '216', '17-12-14', '14:00'), ('MGEB02H3F', '217', '17-12-14', '14:00'),
# ('MGEB02H3F', '218', '17-12-14', '14:00')]
目前的代码:
def get_course_time(db, course):
"""Return the course number, ID, the date and start time of the given
course's exam for all sections. Note there are only multiple sections
if the course IDs are different."""
return run_query(db, '''SELECT Courses.Course FROM Courses
JOIN Time on Time.Course, ID, Date, Start
FROM Time WHERE course = ?''', (course,))
答案 0 :(得分:0)
您的FROM
子句末尾有第二个JOIN
。此外,JOIN
子句似乎有误,但您看到的错误是由于第二个FROM
。
答案 1 :(得分:0)
这就是我所做的,它的确有效......
return run_query(db, ''' SELECT Courses.Course, Courses.ID, Time.Date, Time.Start
FROM Courses JOIN Time ON Courses.ID = Time.ID WHERE Course = ? ''', [course])
get_course_time(db, 'ACTB40H3F')
[(' ACTB40H3F',' 1',' 17-12-12',' 14:00')]
你必须记住在python中,你需要执行某些方法,以便为代码添加额外的参数。享受!