C# C-如何显示特定成员的子数据?

C# C-如何显示特定成员的子数据?,c#,ms-access-2016,C#,Ms Access 2016,我有一个数据库,有两个表,一个用于登录,另一个用于购买游戏。我创建了一个用于登录的会话,现在我无法显示此特定客户的所有行。我可以从MS Access查看表关系,但我不知道如何在标签中显示它们 这是我的代码: OleDbDataReader myReader = null; OleDbCommand cmd = new OleDbCommand("select * from new_table, games where new_table.MemberID='" + Session["New"]

我有一个数据库,有两个表,一个用于登录,另一个用于购买游戏。我创建了一个用于登录的会话,现在我无法显示此特定客户的所有行。我可以从MS Access查看表关系,但我不知道如何在标签中显示它们

这是我的代码:

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:在位置3没有行。。我仍然是C语言的初学者,如果这是以前发布的,我很抱歉。对不起,我的英语不好,它不是我的第一语言

尝试此查询:

   string query = "select * from (games 
          inner join new_table on games.custID = new_table.MemberID)
          where new_table.MemberID = '" + Session["New"] + "'"; 

您想显示客户购买的所有游戏是否正确?@grepLines-yes。但我不知道该怎么做。有几行有相同的游戏标题,但它们位于不同客户购买的不同行中。我可以知道您的游戏表的列名吗?什么是新表格?@grepLines代表新表格,MemberID,MemberPW,MemberName。适用于游戏、游戏名称、游戏价格、游戏光盘、客户ID。。custID是外键。新表中的MemberID是主键。new_table是客户登录名和详细信息您的games table中是否有MemberID?谢谢您的帮助,这是我收到的错误。。异常详细信息:System.Data.OleDb.OLEDBEException:FROM子句中的语法错误。MemberID是int类型的吗?请尝试一下,看看它是否引发异常:select*FROM gamesno异常,但我尝试了两个不同的客户登录,并且都显示了从同一行购买的相同游戏,因为我设置了dt.Rows[0]、dt.Rows[2]和dt.Rows[4]所以只有dt.行[3]不起作用,但行[2]和行[4]可以吗?