只是想知道我的数据库。我有两个名为brand和stringInstrumentItem的表。表品牌有名为brandId,名称和图像的列。虽然stringInstrumentItem具有的itemId的一列,品牌,型号和price.Normally我将能够通过这个代码,以显示列的品牌和表stringInstrumentItem的模型数据:如何使用asp.net读取外键的数据虽然eval?
<div id="label"><%# Eval("brand") %> <%# Eval("model") %></div>
在我的网页的输出将是:Ibanez AB30
但现在,我想了解关系数据库和外键。我将名为brandInstrumentItem的列更改为brandId。现在,用于表stringInstrumentItem的外键的列brandId也引用表brand的主键,名为brandId。
问题是,我不能再做同样的事了。如果我尝试做这行的代码:
<div id="label"><%# Eval("brandId") %> <%# Eval("model") %></div>
它会给我这样的输出:1 AB30
而不是实际的字符串,它给我的ID来代替。我的问题是,我如何通过table stringInstrumentItem的brandId(外键)与表品牌的brandId(主键)之间的关系来访问名为表品牌名称的列?
请注意,我没有在我的代码中编写任何代码来完成此项工作。它全部是内联代码。请为此提供建议和解决方案。
你的代码工作正常,但我只是想问问如何实施这一解决方案,如果目前我在我的代码有这样的说法:string query =“SELECT * FROM stringInstrumentItem WHERE brandId IN(SELECT brandId FROM brand WHERE name = @brand)”; – RockStar
@RockStar看到我的更新,但避免做'SELECT * FROM ...'总是指定要使用的列。绝不仅限于此。 – Icarus
它给了我一个例外:歧义列名'brandId'..这是什么意思? – RockStar