Простая упаковка переменной в скобках, как вы делаете в (Scheme)
, ничего не делает.
.execute()
ожидает кортеж параметра, независимо от того, является ли он просто 1-кортежом, то есть (Scheme,)
:
con.execute(
"CREATE TABLE %s (id int NOT NULL AUTO_INCREMENT, Course varchar(255) NOT NULL, Year varchar(255), PRIMARY KEY(id));",
(Scheme,)
)