将城市ID保存为Db并在检索数据时获取城市名称?

时间:2016-04-09 12:48:49

标签: c# sql-server

我有一个person类,其中包含Name, CNIC, Gender, City个属性。

在将数据保存到DB时,一切都很好。

我在城市中填充下拉菜单,用户可以选择城市,城市ID将保存在tblperson的{​​{1}}列中,该列具有{{1}的外键约束} City列。

现在,当我想从tblcity检索数据时,我觉得一切都很好,而且我能够在文本框中显示数据,虽然我得到的是城市ID,而不是城市名称

但我想获得文本框中显示的城市名称。我怎么能这样做?

我认为我应该做的是:

  1. 在城市类ID中创建新方法。

  2. 将城市的ID从tblPerson传递到getCityName城市类的方法。

  3. 从数据库中的person.City表中获取城市名称

  4. 这种方法对吗?如果没有,那么更好的方法是什么?

1 个答案:

答案 0 :(得分:2)

您只需要编写适当的SQL查询。 JOIN语句允许您从多个表中检索数据,SELECT语句可以返回此数据。

在您的情况下,查询应该是这样的

SELECT p.Name, p.CNIC , p.Gender, p.City, c.CityName
FROM tblperson p LEFT JOIN  tblCity c ON p.City = c.ID

(当然我已经猜到了包含城市名称的列名。
如果它不同,那么你可以改变它)

您可以使用自己喜欢的搜索引擎找到一些有关JOIN的有趣文档 例如,这来自Microsoft Technet