我有一個數據庫有兩個表,一個用於登錄,另一個用於購買遊戲。我創建了一個登錄會話,現在我無法顯示此特定客戶的所有行。我可以查看MS Access中的表格關係,但我不知道如何在標籤中顯示它們。C# - 如何顯示特定成員的子數據?
這裏是我的編碼:
OleDbDataReader myReader = null;
OleDbCommand cmd = new OleDbCommand("select * from new_table, games where new_table.MemberID='" + Session["New"] + "'", con);
myReader = cmd.ExecuteReader();
while (myReader.Read())
{
label_id.Text = (myReader["MemberID"].ToString()); //welcome user
}
OleDbDataReader myReader2 = null;
OleDbCommand cmd2 = new OleDbCommand("select * from new_table, games where '" + Session["New"] + "' = games.custID", con);
myReader2 = cmd2.ExecuteReader();
if (myReader2.HasRows)
{
DataTable dt = new DataTable();
dt.Load(myReader2);
label1.Text = dt.Rows[0]["gameTitle"].ToString();
label2.Text = "$" + Convert.ToDecimal(dt.Rows[0]["gamePrice"]).ToString("N2");
label3.Text = "$" + Convert.ToDecimal(dt.Rows[0]["gameDisc"]).ToString("N2");
label4.Text = dt.Rows[2]["gameTitle"].ToString();
label7.Text = dt.Rows[4]["gameTitle"].ToString();
}
我在這裏的問題是,如果我設置dt.Rows[3]
它顯示錯誤System.IndexOutOfRangeException: There is no row at position 3.
。如果這是之前發佈的,我仍然是C#的初學者。對不起,我的英語不好,這不是我的第一語言。
是正確的,你想顯示買了一個客戶的所有遊戲嗎? – grepLines
@grepLines是。但我不知道如何。有幾行具有相同遊戲標題的行,但它們處於不同客戶購買的不同行中。 –
我可以爲您的「遊戲」表添加列名嗎?什麼是'new_table'? – grepLines