चूंकि क्वेरी के निष्पादन के दौरान पूरी क्वेरी को एक स्ट्रिंग प्रारूप में होना चाहिए, इसलिए %s
इस्तेमाल किया जाना चाहिए...
क्वेरी निष्पादित होने के बाद पूर्णांक मान बरकरार रखा जाता है।
तो आपकी लाइन होनी चाहिए।
.execute("INSERT INTO table VALUES(%s,%s)", (int(id), string))
व्याख्या यहां है