"列名无效"同步表时

时间:2016-11-30 20:09:36

标签: sql

我正在将遗留应用程序的旧存储过程转换为较新的应用程序。

SELECT ContainerID, SizeID.Desc, TypeID.Desc, UOMID.Desc
FROM [Online].dbo.Master
INNER JOIN [Online].dbo.Type TypeID ON Master.TypeID = TypeID.NumID
INNER JOIN [Online].dbo.Size SizeID ON Master.SizeID = SizeID.NumID
INNER JOIN [Online].dbo.Measure MeasureID ON Master.MeasureID = MeasureID.NumID

当我运行此操作时,我在另一个数据库中的3列中收到无效的列名错误,我应该同步,我不知道为什么。

1 个答案:

答案 0 :(得分:0)

多个表具有相同的字段,因此引擎不知道您引用的是哪个字段。并导致该模糊错误。

boost

使用类似

的内容
 SELECT ContainerID, SizeID, TypeID, UOMID
                             ^^
                             can came from Master or Type

如果要从两个表中获取值,则需要使用别名来进行差异化。

 SELECT ContainerID, Master.SizeID, Master.TypeID, UOMID