सी भाषा की तरह, गोलंग भाषा भी एक ओपन-सोर्स भाषा है जिसे रिकॉर्ड बनाने के लिए विंडोज़ और लिनक्स/यूनिक्स सिस्टम पर कई टूल्स पर निष्पादित किया जा सकता है। C ++ और Java की तरह, हम किसी भी गोलंग टूल का उपयोग करके एक MongoDB क्लाइंट सिस्टम और गो लैंग्वेज के बीच संबंध बना सकते हैं। ऐसा करने के लिए, हम एक प्रोग्राम के लिए विज़ुअल स्टूडियो कोड टूल का उपयोग करके Ubuntu 22.04 में कई बहुत महत्वपूर्ण और आवश्यक कदम उठाएंगे। MongoDB कम्पास के साथ संबंध बनाने से पहले, हम Go भाषा में आपकी मदद करने के लिए 'गो' और आवश्यक एक्सटेंशन के साथ MongoDB और विज़ुअल स्टूडियो कोड स्थापित करते हैं।
मोंगोडीबी स्थापित करें
हमने MongoDB सर्वर के 'डिब' पैकेज को इसकी आधिकारिक वेबसाइट से डाउनलोड किया है। टर्मिनल पर 'dpkg' कमांड टूल का उपयोग करके 'देब' पैकेज को उबंटू में भी निष्पादित किया जा सकता है।
टर्मिनल पर MongoDB सर्वर फ़ाइल को 'सुडो' अधिकारों के साथ निष्पादित किया गया और एक पासकोड प्रदान किया गया।
saeedraza@virtualbox:~$ सुडो dpkg -मैं मोंगोडब-ऑर्ग-सर्वर_6.0.3_amd64.deb
यदि आपको स्थिति की जांच करने के लिए उबंटू के 'systemctl' निर्देश का प्रयास करने के बाद मोंगोडीबी सेवा निष्क्रिय मिली, तो आप इसे भी अपडेट कर सकते हैं। MongoDB को सक्रिय करने के लिए, 'प्रारंभ' और 'सक्षम करें' कीवर्ड के साथ systemctl निर्देश आज़माएं।
saeedraza@virtualbox:~$ सुडो systemctl सक्षम करना mongod
saeedraza@virtualbox:~$ सुडो systemctl स्थिति मोंगोड
मोंगोडीबी लॉन्च करें
स्थापना के बाद, 'मोंगो' क्वेरी का उपयोग करके जल्दी से MongoDb शेल लॉन्च करें। कार्यवाही चरणों को करने के लिए 'व्यवस्थापक' डेटाबेस पर स्विच करें।
saeedraza@virtualbox:~$ मोंगोMongoDB शेल संस्करण v5.0.14
इससे कनेक्ट हो रहा है: मोंगोडब: // 127.0.0.1: 27017 / ? कंप्रेशर्स = अक्षम और gssapiServiceName = मोंगोडब
निहित सत्र: सत्र { 'पहचान' : यूयूआईडी ( '34cc8e0f-b6b0-4191-adea-676411f66cf5' ) }
MongoDB सर्वर संस्करण: 6.0.3
हम createUser () फ़ंक्शन का उपयोग करके व्यवस्थापक अधिकारों के साथ एक नया उपयोगकर्ता बना रहे हैं।
डीबी व्यवस्थापक पर स्विच किया गया
> db.createUser (
... {
... उपयोगकर्ता: 'सईद' ,
... पीडब्ल्यूडी: '12345' ,
... भूमिकाएं: [ { भूमिका: 'यूजर एडमिन एनीडेटाबेस' , डीबी: 'व्यवस्थापक' } , 'readWriteAnyDatabase' ]
... } )
सफलतापूर्वक जोड़ा गया उपयोगकर्ता: {
'उपयोगकर्ता' : 'सईद' ,
'भूमिकाएं' : [
{
'भूमिका' : 'यूजर एडमिन एनीडेटाबेस' ,
'डीबी' : 'व्यवस्थापक'
} ,
'readWriteAnyDatabase'
]
}
उपयोगकर्ता 'सईद' को 'ऑर्टिकल' फ़ंक्शन में क्रेडेंशियल्स का उपयोग करके प्राधिकृत किया और MongoDB के वर्तमान स्वामित्व वाले डेटाबेस को प्रदर्शित किया।
एक
> डीबीएस दिखाएं
व्यवस्थापक 0.000 जीबी
कॉन्फ़िगरेशन 0.000GB
स्थानीय 0.000 जीबी
गोलंग के लिए MongoDB ड्राइवर स्थापित करें
विज़ुअल स्टूडियो कोड में टर्मिनल खोलें और 'गोलंग' फ़ोल्डर में जाएँ जिसमें आप अपनी स्रोत कोड फ़ाइलें जोड़ना चाहते थे। 'go.mod' फ़ाइल बनाने के लिए फ़ोल्डर नाम के साथ 'गो मॉड इनिट' निर्देश चलाएँ। 'गो गेट' क्वेरी के माध्यम से गो भाषा के लिए मोंगोडीबी ड्राइवर लोड करें।
saeedraza@virtualbox:~/गोलंग$ Go mod init Golang
कुछ मामलों में, गोलंग के लिए भी bson प्रारूप MongoDB ड्राइवर को लोड करना आवश्यक है।
बिना किसी निर्देश का उपयोग किए एक्सटेंशन पैनल का उपयोग करके विज़ुअल स्टूडियो कोड में 'gopls' जैसे आवश्यक एक्सटेंशन पैकेज जोड़ना सुनिश्चित करें।
'गोपल्स' के साथ, गोलंग को निश्चित रूप से स्थापित करने के लिए 'dlv' टूल की आवश्यकता हो सकती है।
कोड उदाहरण जा रहा है
कनेक्शन के लिए पूरे कोड में उपयोग किए जाने वाले कुछ उपयोगी पैकेजों के आयात के साथ कोड फ़ाइल 'main.go' शुरू की गई है। यहां कुल 7 आयात किए गए हैं। पैकेजों को आयात करने के बाद, हमने इसमें 4 JSON प्रकार के डेटा सदस्यों के साथ MongoField नामक एक नई संरचना बनाई। इनमें से 2 डेटा सदस्य तार हैं और उनमें से 2 पूर्णांक हैं।
इसके बाद क्लाइंट एड्रेस के साथ एक कॉन्स्टेंट टाइप वेरिएबल “uri” डिक्लेयर किया गया है या फिर आपको यूजरनेम और पासवर्ड के हिसाब से इसमें अपना लोकलहोस्ट एड्रेस ऐड करना है। मुख्य () फ़ंक्शन 'मोंगो' ऑब्जेक्ट के माध्यम से मोंगोडीबी से जुड़ने के लिए गोलंग के कनेक्ट () फ़ंक्शन के उपयोग से शुरू होता है। ApplyURI () फ़ंक्शन 'यूरी' चर को क्लाइंट () फ़ंक्शन पर लागू करने के तर्क के रूप में ले जाएगा ताकि एक होस्ट पते के माध्यम से एक कनेक्शन स्थापित किया जा सके। कनेक्शन का अनुरोध करने के लिए TODO () फ़ंक्शन को कॉल करने के लिए संदर्भ पैकेज मुख्य भूमिका निभा रहा है। यदि विज़ुअल स्टूडियो कोड और MongoDB के बीच कनेक्शन सफलतापूर्वक स्थापित हो गया है, तो क्लाइंट द्वारा लौटाया गया सिग्नल 'क्लाइंट' चर में जोड़ा जाएगा; अन्यथा, त्रुटि 'त्रुटि' चर में संग्रहीत की जाएगी।
तदनुसार संदेशों को प्रदर्शित करने के लिए 'अगर' कथन यहां है। यदि 'त्रुटि' चर को 'शून्य' के अलावा कोई मान मिला है, तो प्रारूप पैकेज 'fmt' पैकेज से Println() फ़ंक्शन उस त्रुटि को आउटपुट स्क्रीन, टर्मिनल पर प्रिंट करेगा। त्रुटि होने पर प्रोग्राम से बाहर निकलने के लिए 'os' पैकेज का उपयोग किया जाएगा। इस कार्यक्रम के माध्यम से कनेक्शन स्थापित करने के लिए टाइमआउट का प्रबंधन करने के लिए संदर्भ पैकेज का फिर से उपयोग किया जाता है। विशेष टाइमआउट मान 'सीटीएक्स' के लिए, हमारा कार्यक्रम निष्पादित होगा। एक नया डेटाबेस 'नया' के साथ एक नया संग्रह 'व्यक्ति' क्लाइंट MongoDB में गोलंग के माध्यम से बनाया जाएगा। Println () रिफ्लेक्ट पैकेज से 'टाइपऑफ़' फ़ंक्शन का उपयोग करके संग्रह 'सी' का प्रकार प्रदर्शित करेगा।
MongoField डेटा सदस्यों की संरचना का उपयोग करके एक रिकॉर्ड 'Rec' बनाया गया है, जो यहां एक-एक करके शुरू किए गए हैं। रिकॉर्ड प्रकार प्रदर्शित किया गया और संग्रह ऑब्जेक्ट 'c' के साथ इन्सर्टऑन फ़ंक्शन का उपयोग करके रिकॉर्ड 'Rec' क्लाइंट MongoDB में डाला जाएगा। सफल सम्मिलन एक 'परिणाम' चर की ओर जाता है जो सफलता मान रखता है जबकि 'insertErr' चर विफलता मान धारण करेगा। 'if' स्टेटमेंट का उपयोग फिर से रिकॉर्ड डालने में त्रुटि को जांचने और प्रदर्शित करने के लिए किया जाता है, अगर 'insertErr' वेरिएबल 'nil' मान के अलावा अन्य हो। अन्यथा, कथन का 'अन्य' भाग सम्मिलित किए जाने वाले रिकॉर्ड के प्रकार, रिकॉर्ड आईडी, और कनेक्शन और सम्मिलन के लिए सफलता संदेश प्रदर्शित करने के लिए कुछ Println () कथनों को धारण करेगा। गोलंग कोड अब पूरा हो गया है।
मुख्य पैकेजआयात करना (
'प्रसंग'
'एफएमटी'
'तुम'
'विचार करना'
'समय'
'go.mongodb.org/mongo-driver/mongo'
'go.mongodb.org/mongo-driver/mongo/options'
)
प्रकार मोंगोफिल्ड संरचना {
नाम स्ट्रिंग ` जसन: 'फ़ील्ड स्ट्र' `
ईमेल स्ट्रिंग ` जसन: 'फ़ील्ड स्ट्र' `
उम्र इंट ` जसन: 'फ़ील्ड इंट' `
वेतन इंट ` जसन: 'फ़ील्ड इंट' `
}
कॉन्स्ट यूरी = 'मोंगोडब: // उपयोगकर्ता पासवर्ड @ लोकलहोस्ट: 27017 / ? maxPoolSize = बीस और में = बहुमत”
func main ( ) {
क्लाइंट, इरेट: = मोंगो.कनेक्ट ( संदर्भ। सभी ( ) , विकल्प। ग्राहक ( ) अप्लाईयूआरआई ( प्रकार ) )
अगर ग़लती होना ! = शून्य {
fmt.Println ( 'Mongo.connect () त्रुटि:' , गलती )
ओएस। बाहर निकलें ( एक )
}
सीटीएक्स, _: = संदर्भ। टाइमआउट के साथ ( संदर्भ। पृष्ठभूमि ( ) , पंद्रह * समय।दूसरा )
सी: = क्लाइंट.डाटाबेस ( 'नया' ) ।संग्रह ( 'व्यक्ति' )
fmt.Println ( 'संग्रह प्रकार:' , प्रतिबिंबित करें। टाइपऑफ़ ( सी ) , ' \एन ' )
आरईसी: = MongoField {
नाम: 'ईडन' ,
ईमेल: 'eden@gmail.com' ,
उम्र: चार पांच ,
वेतन: 50000 }
fmt.Println ( 'रिकॉर्ड का प्रकार: ' , प्रतिबिंबित करें। टाइपऑफ़ ( आरईसी ) , ' \एन ' )
परिणाम, सम्मिलित करें: = c.InsertOne ( सीटीएक्स, आरईसी )
अगर सम्मिलित करें ! = शून्य {
fmt.Println ( 'इन्सर्टवन एरर:' , इंसर्ट एर )
ओएस। बाहर निकलें ( एक )
} वरना {
fmt.Println ( 'इन्सर्टवन परिणाम प्रकार:' , प्रतिबिंबित करें। टाइपऑफ़ ( नतीजा ) )
newID = result.InsertedID
fmt.Println ( 'सम्मिलित रिकॉर्ड आईडी:' , न्यूआईडी ) )
fmt.Println ( 'सफलतापूर्वक जुड़े और सम्मिलित रिकॉर्ड!' )
} }
गोलंग कोड को सेव करें और गोलंग फोल्डर में टर्मिनल खोलें। अब, 'main.go' कोड फ़ाइल को निष्पादित करने के लिए 'रन' कीवर्ड के साथ 'गो' निर्देश का उपयोग करें। डिबगिंग सफल रही और MongoDB में संग्रह 'व्यक्ति' सफलतापूर्वक उत्पन्न हो गया है। आउटपुट संग्रह प्रकार, रिकॉर्ड प्रकार, परिणाम प्रकार और रिकॉर्ड की 'आईडी' दिखा रहा है।
संग्रह प्रकार: * मोंगो। संग्रह
रिकॉर्ड प्रकार: main.MongoField
सम्मिलित करें एक परिणाम प्रकार: * मोंगो.InsertOneResult
सम्मिलित रिकॉर्ड आईडी: ऑब्जेक्ट आईडी ( '63a8535ac97b4218230664b6' )
सफलतापूर्वक जुड़े और सम्मिलित किए गए रिकॉर्ड।
अपने अंत में 'MongoDB' कम्पास खोलें और 'URI' का उपयोग करके इसके स्थानीय होस्ट से जुड़ें।
'नया' डेटाबेस के भीतर जाने के बाद, हमें 'दस्तावेज़' अनुभाग में प्रदर्शित किए गए रिकॉर्ड के साथ संग्रह 'व्यक्ति' मिला है जिसे हमने जोड़ा है।
निष्कर्ष
यह मार्गदर्शिका लिनक्स सिस्टम में विज़ुअल स्टूडियो कोड टूल का उपयोग करके MongoDB क्लाइंट में रिकॉर्ड जोड़ने के लिए गो भाषा के उपयोग को दर्शाती है। इसके लिए, हमने सिस्टम में 'गोलंग' के लिए मोंगोडब ड्राइवर के साथ मोंगोडब स्थापित किया है। गोलंग भाषा का उपयोग करते हुए, हमने MongoDB में एक 'गो' फ़ाइल बनाई है और MongoDB से संबंध बनाने और रिकॉर्ड सम्मिलित करने के लिए गोलंग के विभिन्न पैकेजों और कार्यों पर चर्चा की है। अंत में, हमने MongoDB कम्पास पर परिणाम प्रदर्शित किए हैं जो दर्शाता है कि आप किसी भी गोलंग टूल को MongoDB से जोड़ सकते हैं।