Anzeige Datenbank-Wert auf dem Etikett in einer Tabelle
Ich versuche zu verwenden datareader zur Darstellung bestimmter Wert aus bestimmten Tabelle in der Datenbank. Wie Sie sehen können aus meiner sql-Abfrage, die ich verwendet Daten aus 3 separaten Tischen und memberreportid und Benutzername hat ein PK und FK r/s.
Leider war ich nicht in der Lage, um die Anzeige den Wert wollte ich wie unten angegeben.
Dies ist der Fehler, ich recevied
IndexOutOfRangeException wurde unhandled by user code
Ich kommentieren die Darstellung aus dem Wert-codes Zeile für Zeile und in der Tat alle erhalten den oben genannten Fehler
Hier sind meine codes.
protected void DDLCase_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("Data Source = localhost; Initial Catalog = project; Integrated Security = SSPI");
con.Open();
SqlCommand cm = new SqlCommand("Select * from MemberReport mr, PoliceReport pr, LoginRegisterOthers lro where pr.memberreportid = '" + DDLCase.SelectedItem.Text + "' and mr.memberreportid=pr.memberreportid and lro.username=mr.username and caseprogress='settled'", con);
SqlDataReader dr;
dr = cm.ExecuteReader();
if (dr.Read())
{
lblFullName.Text = dr["lro.fullname"].ToString();
lblContact.Text = dr["lro.contact"].ToString();
lblTOC.Text = dr["mr.typeofcrime"].ToString();
lblLocation.Text = dr["mr.location"].ToString();
lblCRDT.Text = dr["mr.CRdatetime"].ToString();
lblPicture.Text = dr["picture"].ToString();
lblAssign.Text = dr["pr.policeid"].ToString();
lblPRDT.Text = dr["pr.PRdatetime"].ToString();
lblCR.Text = dr["mr.citizenreport"].ToString();
lblPR.Text = dr["pr.policereport"].ToString();
}
con.Close();
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wählen Sie alle Zeilen mit "*" aber dann sind Sie versucht, auf Sie zuzugreifen, die mit Tabellen-aliases. Entweder ändern Sie Ihre Abfrage:
oder den Zugang zu Ihnen in
datareader
ohne Aliase:auch ich rate dringend zur Verwendung von Parametern!
Versuchen, diese
SqlDataAdapter Beispiel