SQL में एक सेट को लागू करने का सही तरीका दो अतिरिक्त टेबल के साथ होगा:
CREATE TABLE set (
id int unsigned PRIMARY KEY AUTO_INCREMENT
);
CREATE TABLE set_member (
set_id int unsigned NOT NULL,
FOREIGN KEY (set_id) REFERENCES set(id),
member <whatever_type_your_set_is_of> NOT NULL,
UNIQUE (set_id, member)
);
(आप set
. से बचने में सक्षम हो सकते हैं तालिका, यदि आप सेट को केवल एक तालिका में संग्रहीत करना चाहते हैं, और उस तालिका में एक अद्वितीय आईडी है, और आप तालिका में प्रति रिकॉर्ड केवल एक सेट संग्रहीत करेंगे)
चूंकि यह बहुत संभव है कि आप एक उचित SQL दृष्टिकोण की तलाश नहीं कर रहे हैं (जो वास्तव में ठीक है, if आप भंडारण और पुनर्प्राप्ति के अलावा, उन सेटों पर कभी भी कोई इन-डेटाबेस ऑपरेशन नहीं करने जा रहे हैं), आप अनुशंसित प्रथाओं का पालन करने के बजाय अपने सेट को एक ही फ़ील्ड में एक टेबल पर असामान्य रूप से संग्रहीत करेंगे; उस स्थिति में कोई मूल MySQL डेटा प्रकार नहीं है जो एक पायथन सेट का प्रतिनिधित्व कर सकता है और आपको अपने सेट को varchar
में क्रमबद्ध करने की आवश्यकता होगी या एक text
कॉलम। यह पूरी तरह से आप पर निर्भर है कि आप एक क्रमांकन प्रारूप चुनें जो आपकी आवश्यकताओं के अनुरूप हो।