Запрос и параметры являются отдельными аргументами для c.execute()
. Запрос представляет собой строку, параметры являются итеративными.
query = """
INSERT INTO Tags (tag_text, tag_category, tag_start, tag_end, tag_doc_id, tag_subject_id, tag_id)
VALUES(?,?,?,?,?,?,?)
"""
params = (str(tag["tag_text"]), str(tag["tag_label"]), str(tag["tag_start"]), str(tag["tag_end"]), str(doc_id), str(subject["subject_id"]), str(tag["tag_id"]))
c.execute(query, params)
Если вы хотите соединить их вместе, вам нужно распространить их при вызове метода.
query = ("""
INSERT INTO Tags (tag_text, tag_category, tag_start, tag_end, tag_doc_id, tag_subject_id, tag_id)
VALUES(?,?,?,?,?,?,?)
""", (str(tag["tag_text"]), str(tag["tag_label"]), str(tag["tag_start"]), str(tag["tag_end"]), str(doc_id), str(subject["subject_id"]), str(tag["tag_id"])))
c.execute(*query)