2013-01-04 89 views
2

任何一个可以说明为什么更新语句在SQL-SERVER-2008工作下面Update语句不工作

UPDATE [dbo].[CTRL_SECURITY] 
SET BI_FIN_FLG = ISNULL(CAF.BI_FIN_FLG,'N'), 
      BI_HR_FLG = ISNULL(CAF.BI_HR_FLG,'N') 
FROM dbo.CTRL_APP_FLG AS CAF 
LEFT JOIN [dbo].[CTRL_SECURITY] AS CS 
     ON CAF.TABLE_COLUMN_VALUE = CAST(CS.ACCOUNT_ID AS VARCHAR(180)) 
    WHERE ACCOUNT_ID IN(SELECT TABLE_COLUMN_VALUE FROM dbo.CTRL_APP_FLG WHERE TABLE_NAME='DIM_ACCOUNT') 
+2

对于未来的参考“不工作”不是从人们获得帮助的好起点 - 尝试用什么方式解释*事情不起作用 - 您是否收到错误消息? (如果是这样,请包括它)意外的结果? (如果是这样,包括样本数据,预期结果和实际结果,并解释预期结果) –

+2

可能需要替换UPDATE [dbo]。[CTRL_SECURITY]更新CS –

+0

您收到了什么错误,它是否不会更新任何内容? –

回答

0

更改UPDATE [DBO]提到的代码的原因。[CTRL_SECURITY]更新CS

+0

或者,对于此表,消除别名并在全部位置以完整格式引用[dbo]。[CTRL_SECURITY]。 – user662852