मेरे पास चालान के लिए एक सास पालतू परियोजना है। इसमें, मैं अपने ग्राहकों को टिकट संख्या 1001 के साथ प्रत्येक शुरुआत करना चाहता हूं। जाहिर है, मैं पोस्टग्रेज़ में एक साधारण ऑटो फ़ील्ड का उपयोग नहीं कर सकता और केवल मूल्य में 1000 जोड़ सकता हूं, क्योंकि मेरे सभी ग्राहक एक ही डेटाबेस साझा करेंगे और उसी tickets
तालिका .. मैंने नवीनतम नंबर प्राप्त करने के लिए एक पूर्णांक कॉलम प्रकार और क्वेरीिंग (छद्म एसक्यूएल) SELECT LATEST number FROM tickets WHERE client_id = [current client ID]
का उपयोग करने का प्रयास किया है, और उसके बाद अगले number
प्राप्त करने के लिए उस नंबर + 1
का उपयोग कर रहा है। समस्या यह है कि समेकन के साथ, दो टिकटों के लिए इस तरह की संख्या के साथ समाप्त होना आसानी से संभव है। जिस नंबर को मुझे Django के भीतर या कच्चे एसक्यूएल (बैश या सॉर्ट के किसी और चीज का उपयोग करके) करने में सक्षम होना चाहिए।पोस्टग्रेस में कॉलम मैन्युअल रूप से अनुक्रमित करने का उचित तरीका क्या है?
मैं काम करने के लिए अपने उदाहरण को मजबूर करने का कोई तरीका नहीं ढूंढ रहा हूं। मैं बस प्रत्येक ग्राहक के लिए स्वतंत्र रूप से बढ़ती टिकट संख्या की आवश्यकता की मेरी समस्या का हल ढूंढ रहा हूं।
संभावित डुप्ली: http://stackoverflow.com/questions/6046085/postgresql-sequence-that-ensure-a-unique-id –
डुप्लिकेट नहीं है क्योंकि यह एक अद्वितीय संख्या की तलाश में है। मेरा दूसरा क्षेत्र (क्लाइंट फ़ील्ड) के संबंध में अनुक्रम में अगली संख्या की तलाश में है। असल में, मेरा कहना है कि मैं एक ऑटो फील्ड (यानी, धारावाहिक) का उपयोग नहीं कर सकता। – orokusaki
गोचा, अब मैं समझता हूं। उम्मीद है कि मेरा जवाब आपके लिए काम करता है (या, बेहतर अभी तक, किसी और के पास कुछ और सुरुचिपूर्ण है)। –