कोड:
स्ट्रिंग connString = "server =; यूआईडी =; पासवर्ड =; डाटाबेस =, "; MySqlConnection कनेक्ट = नया MySqlConnection (connString); MySqlCommand myCommand = connect.CreateCommand (); स्ट्रिंग इनपुट = textBox4.Text; MyCommand.CommandText = "चुनें * परियोजना से WHERE आईडी = @ इनपुट"; connect.Open (); MySqlDataReader रीडर = myCommand.ExecuteReader (); अगर (reader.Read ()) textBox1.Text = reader ["name"]। ToString (); connect.Close (); मैं एक प्रपत्र टेक्स्टबॉक्स (textBox4) से डेटा का उपयोग करने की कोशिश कर रहा हूं और उस इनपुट को एक mysql क्वेरी में पास कर रहा हूं।
यह प्रोग्राम उपयोगकर्ता द्वारा अपना आईडी नंबर इनपुट करता है और फ़ॉर्म उनके नाम को एक अन्य टेक्स्टबॉक्स (पाठ बॉक्स 1) में दिखाता है।
जब मैं या तो स्ट्रिंग 'इनपुट' या textBox4.Text का उपयोग करता हूं तो मुझे एक त्रुटि संदेश मिलता है: "कमांड निष्पादन के दौरान गंभीर त्रुटि आई है।"
हालांकि अगर मैं मैन्युअल रूप से कोड में एक सही आईडी नंबर टाइप करता हूं तो यह सही वाउल देता है
नई सी # और mysql को किसी भी बड़ी त्रुटियों के लिए खेद है।
आप वास्तव में लगभग हैं, वास्तव में आप एक पैरामीटर ( @input ) और न करें कंसटानेटिंग स्ट्रिंग ( "select .." + text + "से ..." ) का उपयोग कर रहे हैं ), जो कई कारणों से गलत है। बस अपने आदेश को बताएं कि उस पैरामीटर को कैसे बदलें। मुझे लगता है कि ऐसा कुछ है (MySQL के लिए निश्चित नहीं है):
myCommand.Parameters.Add ("@ input", SqlDbType.Int)। Valu = Convert.ToInt32 (textBox4.Text); ध्यान दें कि मैं मान रहा हूँ कि आईडी प्रकार SqlDbType.Int है। आप इसे तदनुसार बदल सकते हैं। आपको पहले कॉलिंग myCommand.ExecuteReader () करना चाहिए। सबसे अधिक संभावना है, आप myCommand.CommandText = "..."; ।
No comments:
Post a Comment