Monday 15 April 2013

c# - Login form with access database -


  प्रयास करें {OleDbConnection con = new OleDbConnection (@ "प्रदाता = Microsoft.Jet.OLEDB.4.0; डेटा स्रोत = C: \ Users \ jay.desai \ Documents \ Visual Studio 2008 \ Projects \ Jahoo साइन इन फॉर्म! \ Jahoo साइन इन फॉर्म! \ पंजीकरण_form.mdb "); con.Open (); OleDbCommand cmd = new OleDbCommand ("लॉगिन से चुनें * जहां उपयोगकर्ता नाम = '" + txtlognUsrnm.Text + "' और पासवर्ड = '" + txtlognpswrd + "' ', con); OleDbDataReader dr = cmd.ExecuteReader (); अगर (डॉ। रीड () == सत्य) {MessageBox.Show ("लॉगिन सफल"); } अन्य {Messagebox.Show ("अमान्य क्रेडेंशियल्स, कृपया पुनः दर्ज करें"); } पकड़ (अपवाद पूर्व) {संदेश बॉक्स। दिखाएँ (ex.ToString ()); }   

मैंने एक लॉगिन फॉर्म और एक टेबल को माइक्रोसॉफ्ट एक्सेस में बनाया है जिसमें यूज़रनेम और पासवर्ड फ़ील्ड शामिल हैं। जब मैं लॉगिन बटन पर क्लिक करता हूं तो यह हमेशा अन्य संदेश दिखाता है, हालांकि उपयोगकर्ता नाम और पासवर्ड समान हैं तालिका में। पासवर्ड

पासवर्ड PASSWORD एक्सेस-जेट में एक आरक्षित कीवर्ड है आपको यह चौकोर कोष्ठक में समापित करने की आवश्यकता है।

  OleDbCommand cmd = new OleDbCommand ("लॉगिन से चयन करें जहां यूज़रनेम =" + "? और [पासवर्ड] =?", कॉन);   

एसक्यूएल कमानों को बनाने के लिए स्ट्रिंग कंसनेक्शन का भी प्रयोग न करें लेकिन एक पैरामीटर वाली क्वेरी

उपरोक्त आपके कोड में अन्य समस्याएं हैं।
पहले का उपयोग करने का प्रयास करें बयान यह सुनिश्चित करने के लिए कि कनेक्शन और अन्य डिस्पोजेबल ऑब्जेक्ट सही तरीके से बंद हो गए हैं और निपटाए गए हैं।
दूसरा, अगर आपको केवल प्रवेश क्रेडेंशियल्स की जांच करने की आवश्यकता है, तो पूरे रिकॉर्ड को वापस लेने की कोई आवश्यकता नहीं है और आप ExecuteScalar विधि का उपयोग कर सकते हैं OleDbDataReader ऑब्जेक्ट से परहेज

  स्ट्रिंग constring = @ "प्रदाता = Microsoft.Jet.OLEDB.4.0; डेटा स्रोत = सी: \ उपयोगकर्ता \ jay.desai \ दस्तावेज़ \ विजुअल स्टूडियो 2008 \ परियोजनाएं \ याहू साइन इन फॉर्म! \ Jahoo साइन इन फॉर्म! \ पंजीकरण_form.mdb "; स्ट्रिंग cmdText = "लॉगिन से गणना (*) चुनें जहां यूजरनाम =? और [पासवर्ड] =?" (OleDbConnection con = नया OleDbConnection (constring)) का उपयोग करते हुए (OleDbCommand सीएमडी = नया OleDbCommand (cmdText, con)) का उपयोग करते हुए {con.Open (); Cmd.Parameters.AddWithValue ("@ पी 1", txtlognUsrnm.Text); Cmd.Parameters.AddWithValue ("@ पी 2", txtlognpswrd.Text); // & lt; - क्या यह एक चर या पाठ बॉक्स है? Int परिणाम = (int) cmd.ExecuteScalar () यदि (परिणाम & gt; 0) MessageBox.Show ("लॉगिन सफल"); अन्य संदेशबाक्स। दिखाएँ ("अमान्य क्रेडेंशियल्स, कृपया पुनः दर्ज करें"); }    

No comments:

Post a Comment