2016-08-07 32 views
1

abrufen Ich erstelle ein Hotel-Management-System, in dem ich den Raum aus einem bestimmten Grund holen soll. Ich hole room_NO aus der Buchungstabelle mit tourist_CNIC Feld aus der gleichen Tabelle. Aber ich bekomme immer 0, anstatt die richtige Zimmernummer zu bekommen, die ich allen Zimmern zugewiesen habe. Balg ist mein Code:Ich kann keine Daten von phpMyadmin mit Datentabelle

private int Fetch_Room() 
     { 
      int number = 0; 
      try 
      { 
       String str = "SELECT room_NO FROM booking WHERE tourist_CNIC='" + cnic.Content.ToString() + "'"; 
       MySqlDataAdapter da = new MySqlDataAdapter(str, con); 
       DataTable dt = new DataTable(); 
       da.Fill(dt); 
       foreach(DataRow row in dt.Rows) 
        number = Convert.ToInt32(row.ItemArray[0]); 
       return number; 
      } 
      catch (Exception x) { MessageBox.Show("Error: " + x.Message); return number; } 
     } 
+0

es soll sein 'row.ItemArray [0]'? – Mostafiz

+0

Gut funktioniert es auch nicht mit '' row.ItemArray '' entweder @Mostafiz –

Antwort

0

Sie können MySqlDataReader für diesen Fall verwenden. versuchen Sie unter Lösung

rivate int Fetch_Room() 
     { 
      int number = 0; 
      try 
      { 
       String str = "SELECT room_NO FROM booking WHERE tourist_CNIC='" + cnic.Content.ToString() + "'"; 
       MySqlCommand cmd = new MySqlCommand(str, con); 
       MySqlDataReader rdr = cmd.ExecuteReader(); 

       while (rdr.Read()) 
        { 
        number = (int)rdr.GetValue(0); 
        } 
       return number; 
      } 
      catch (Exception x) { MessageBox.Show("Error: " + x.Message); return number; } 
     } 
+0

Dies half @Mostafiz nicht –