यह पायथन डीबी-एपीआई में एक दोष है:यह आपके लिए एक लेनदेन शुरू करता है। ऐसा नहीं करना चाहिए; क्या और कब लेन-देन शुरू करना है यह प्रोग्रामर पर निर्भर होना चाहिए। इस तरह के निम्न-स्तरीय, कोर एपीआई को डेवलपर को ध्यान में नहीं रखना चाहिए और हमारी पीठ पीछे लेनदेन शुरू करने जैसी चीजें नहीं करनी चाहिए। हम बड़े लड़के हैं--हम लेन-देन स्वयं शुरू कर सकते हैं, धन्यवाद।
Psycopg2 के साथ, आप एपीआई एक्सटेंशन के साथ इस दुर्भाग्यपूर्ण व्यवहार को अक्षम कर सकते हैं:connection.autocommit = True चलाएं . दुर्भाग्य से, इसके लिए कोई मानक एपीआई नहीं है, इसलिए आपको आदेश जारी करने के लिए गैर-मानक एक्सटेंशन पर निर्भर रहना पड़ता है जिसे लेनदेन के बाहर निष्पादित किया जाना चाहिए।
कोई भी भाषा अपने मस्सों के बिना नहीं है, और यह पायथन में से एक है। मुझे इससे पहले भी काटा जा चुका है।