无法更新

时间:2015-10-28 10:29:31

标签: sql sql-server sql-server-2008

<ion-view title="courses" hide-back-button="true" left-buttons="leftButtons" right-buttons="rightButtons"
      hide-back-button="true">

    <ion-content has-header="true" padding="true">
        ----your elements----
    </ion-content >

我收到错误消息:

  

无法绑定多部分标识符“r.FileNo”。

3 个答案:

答案 0 :(得分:2)

似乎&#34; r&#34;和&#34; v&#34;标识符仅可用于子查询。

请尝试使用UPDATE FROM语法,如下所示: Update a table using JOIN in SQL Server?

答案 1 :(得分:0)

这是抱怨,因为你告诉它更新这个名为r的表/别名,但在上面的表名中找不到此r

您可以将查询重写为:

UPDATE r
SET r.[FileNo] = v.[Cont#Account (New ACC)]
FROM [RegistryCopy].[dbo].[RegFile_New] as r
INNER JOIN [Registry_Malta_Recovered].[dbo].OLD_NEW_AccountsFromSap as v
    ON r.FileNo] = v.[Acct in legacy (Old ACC)]
WHERE r.[FileNo] = ('1000040000')

答案 2 :(得分:0)

您的陈述无效。您指的是外部查询中在内部查询(子查询)中定义的别名,并且您还引用了外部查询中仅在内部查询中定义的表的字段。

这是您查询的最接近的近似值:

UPDATE r
SET [FileNo] = v.[Cont#Account (New ACC)]
FROM [RegistryCopy].[dbo].[RegFile_New] AS R
INNER JOIN [Registry_Malta_Recovered].[dbo].OLD_NEW_AccountsFromSap AS v
    ON r.[FileNo] = v.[Acct in legacy (Old ACC)]
WHERE r.[FileNo] = ('1000040000')