加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何从.NET中具有重复列名的连接表中读取SELECT *的结果

发布时间:2020-12-16 01:31:00 所属栏目:百科 来源:网络整理
导读:我是一名 PHP / MYSQL开发人员,慢慢地进入C#/ MSSQL领域,当我在阅读连接两个表的MSSQL查询时遇到C#问题. 给出两个表: 表A: int:idVARCHAR(50):nameint:b_id 表B: int:idVARCHAR(50):name 并给出了查询 SELECT * FROM TableA,TableB WHERE TableA.b_id = T
我是一名 PHP / MYSQL开发人员,慢慢地进入C#/ MSSQL领域,当我在阅读连接两个表的MSSQL查询时遇到C#问题.

给出两个表:

表A:

int:id
VARCHAR(50):name
int:b_id

表B:

int:id
VARCHAR(50):name

并给出了查询

SELECT * FROM TableA,TableB WHERE TableA.b_id = TableB.id;

现在在C#中我通常以下列方式读取查询数据:

SqlDataReader data_reader= sql_command.ExecuteReader();
data_reader["Field"];

除了在这种情况下,我需要区别于TableA的名称列和TableB的名称列.

在PHP中,我只是相应地要求字段“TableA.name”或“TableB.name”,但是当我尝试类似的东西时

data_reader["TableB.name"];

在C#中,我的代码错误了.现在我知道这可以通过谷歌搜索或在这个网站上搜索来解决,但我最难找到适当的搜索词找到答案.

那么有人可以指点我的写作方向,或者给我一个关于如何在C#中读取多个表的查询的建议?

解决方法

结果集仅查看返回的数据/列名称,而不是基础表.将您的查询更改为类似的内容

SELECT TableA.Name as Name_TA,TableB.Name as Name_TB from ...

然后你可以参考这样的字段:

data_reader["Name_TA"];

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读