我有两张桌子。他们是:
Country(CountryID,CountryName,AboutCountry)
City(CityID,CityName,Location,AboutCity,CountryID)
他们处于一对多的关系中(从国家的角度来看)。我创建了一个像这样的视图
CREATE VIEW GetByID AS
SELECT DISTINCT CountryName FROM
City INNER JOIN Country ON
City.CountryID = Country.CountryID
我收到此错误,称为多部分标识符,在执行此查询后无法绑定
SELECT * FROM GetByID WHERE City.CityID = 1
我使用 1 因为我知道 CityID = 1 属于city表中的城市。如果我在不使用视图的情况下执行,那么我就不会再出现该错误了。为什么会出现这种错误?有人可以解释这个错误,我该如何避免这种错误?
提前致谢。
答案 0 :(得分:2)
您创建的视图仅包含CountryName
字段。然后您正在搜索不在您视野中的CityID
。看来你正在接近你的观点作为一个程序。你应该将它视为一个表,它是用字段创建的,你不能查询那里尚未存在的内容。您应该扩展视图以包含CityID
。