Eftersom hela frågan måste vara i ett strängformat vid körning av frågan så %s ska användas...
Efter att frågan har utförts behålls heltalsvärdet.
Så din linje borde vara.
.execute("INSERT INTO table VALUES(%s,%s)", (int(id), string))
Förklaringen finns här