Protože celý dotaz musí být při provádění dotazu ve formátu řetězce, tak %s
by měl být použit...
Po provedení dotazu je zachována celočíselná hodnota.
Takže váš řádek by měl být.
.execute("INSERT INTO table VALUES(%s,%s)", (int(id), string))
Vysvětlení je zde