C# 如何在listview中显示不同表中的列
我有一个表,其中包含来自另一个表的外键和信息;这就像:在TablePerson中,我有一个列C# 如何在listview中显示不同表中的列,c#,mysql,C#,Mysql,我有一个表,其中包含来自另一个表的外键和信息;这就像:在TablePerson中,我有一个列country\u id,来自表country,其中保存了一些国家;我想在列表视图中显示来自表person不同列的信息,并显示来自表country的国家名称,而不是表person中的country\u id。 这是我的代码: nameview.Items.Clear(); countryview.Items.Clear(); emailview.Items.
country\u id
,来自表country
,其中保存了一些国家;我想在列表视图中显示来自表person
不同列的信息,并显示来自表country的国家名称,而不是表person
中的country\u id
。
这是我的代码:
nameview.Items.Clear();
countryview.Items.Clear();
emailview.Items.Clear();
bankview.Items.Clear();
cardnrview.Items.Clear();
com.CommandText = "Select * from Account";
dataSearch = com.ExecuteReader();
if (dataSearch.HasRows)
{
while (dataSearch.Read())
{
nameview.Items.Add(dataSearch["NickName"].ToString());
countryview.Items.Add(dataSearch["Country_ID"].ToString());
emailview.Items.Add(dataSearch["Email"].ToString());
bankview.Items.Add(dataSearch["BankAccount_ID"].ToString());
cardnrview.Items.Add(dataSearch["Card_Number"].ToString());
}
}
请在
com.CommandText
中键入完整的查询,并相应地获取密钥
而不是:com.CommandText=“选择*来自帐户”
试试这个:
com.CommandText = "Select a.bankAccountId as 'BankAccount_ID', a.cardNumber
as 'Card_Number', p.nickName as 'NickName', c.countryName as 'Country_Name'
from Account A inner join Person P on A.accountId = P.accountId
inner join country c on c.countryId = p.countryId";
现在,您应该能够做到这一点:
if (dataSearch.HasRows)
{
while (dataSearch.Read())
{
nameview.Items.Add(dataSearch["NickName"].ToString());
.
.
.
}
}