मैं आधार के रूप में sqlite3 का उपयोग कर अपने आवेदन के लिए डेटाबेस लाइब्रेरी का निर्माण कर रहा हूं। मैं इतना है कि यह संरचना करना चाहते हैं:मुझे अपने पायथन एप्लिकेशन के लिए एक सरल डेटाबेस पैकेज कैसे बनाना चाहिए?
db/ __init__.py users.py blah.py etc.py
तो मैं अजगर में ऐसा होगा:
import db
db.users.create('username', 'password')
मैं विश्लेषण पक्षाघात (! ओह नहीं) कैसे डेटाबेस कनेक्शन को संभालने के लिए के बारे में पीड़ित कर रहा हूँ। मैं वास्तव में इन मॉड्यूल में कक्षाओं का उपयोग नहीं करना चाहता हूं, यह वास्तव में "उपयोगकर्ताओं" ऑब्जेक्ट्स का एक समूह बनाने में सक्षम होने के लिए उपयुक्त नहीं लगता है जो सभी एक ही डेटाबेस में उसी तरीके से हेरफेर कर सकते हैं - इसलिए कनेक्शन को विरासत में रखना एक जाना
मैं डेटाबेस है कि सभी मॉड्यूल का उपयोग करने के एक वैश्विक कनेक्शन होना चाहिए, और फिर प्रत्येक मॉड्यूल में इस डाल:
#users.py
from db_stuff import connection
या मैं प्रत्येक मॉड्यूल के लिए एक नया कनेक्शन बना सकते हैं और है कि जिंदा रखना चाहिए?
या क्या मुझे प्रत्येक लेनदेन के लिए एक नया कनेक्शन बनाना चाहिए?
इन डेटाबेस कनेक्शनों का उपयोग कैसे किया जाना चाहिए? कर्सर ऑब्जेक्ट्स के लिए यह वही है: क्या मैं प्रत्येक लेनदेन के लिए एक नया कर्सर बना सकता हूं? प्रत्येक डेटाबेस कनेक्शन के लिए केवल एक बनाएँ?
अक्सर अनदेखा उपेक्षा की एक बहुत ही सुरुचिपूर्ण अभिव्यक्ति। – msw
तो क्या एक वैश्विक कनेक्शन है लेकिन इसे कक्षा में लपेटें? यह एक वैश्विक कनेक्शन होने से बहुत अलग नहीं लगता है लेकिन इसे मॉड्यूल में डाल रहा है ... क्या प्रत्येक मॉड्यूल अपने कनेक्शन शुरू करने के लिए एक बुरी चीज है? –
कभी नहीं, कुछ पढ़ने के बाद मुझे पता चला कि एक ही डेटाबेस के दो कनेक्शन इतने अच्छी तरह से काम नहीं करते हैं:/ –