2016-04-14 98 views
0

我正在嘗試使用TRIGGER進行更新。錯誤觸發器。多部分標識符「...」無法綁定

我有2個數據庫(eBob和Sbmx_taslado),他們共享信息,材料和密度。

我想要做的是,當您更改材料的密度(數據庫Sbmx_traslado)時,會更新(eBob數據庫)。

的問題是,該表進行更新,其中材料可以重複在不同的容器一樣,它向我發送以下錯誤:

(請原諒我的英文,使用谷歌)

enter image description here

Use Sbmx_traslado 
GO 

CREATE TRIGGER DensidadMaterial2 
ON [Sbmx_traslado].[dbo].[Sbmx_Contenedores] 
AFTER UPDATE 
AS 
UPDATE [eBob].[dbo].[tblVessel] 
SET [eBob].[dbo].[tblVessel].[ProductDensityWeight] = [Sbmx_traslado].[dbo].[Sbmx_Contenedores].[Densidad] 
FROM [Sbmx_traslado].[dbo].[Sbmx_Contenedores] 
WHERE [eBob].[dbo].[tblVessel].[Contents] = [Sbmx_traslado].[dbo].[Sbmx_Contenedores].[Ingrediente] 
+0

這是一個開始:這個錯誤意味着你在聲明中未使用別名。 – logixologist

+1

不要張貼文字的截圖。用文字寫出錯誤(英文)。 – Blorgbeard

+0

2個表格現在如何連接。 – logixologist

回答

1

您在WHERE子句中引用不在FROM中的表。嘗試這個。

Use Sbmx_traslado 
GO 

CREATE TRIGGER DensidadMaterial2 
ON [Sbmx_traslado].[dbo].[Sbmx_Contenedores] 
AFTER UPDATE 
AS 
UPDATE [eBob].[dbo].[tblVessel] 
SET [eBob].[dbo].[tblVessel].[ProductDensityWeight] = [Sbmx_traslado].[dbo].[Sbmx_Contenedores].[Densidad] 
FROM [eBob].[dbo].[tblVessel] 
JOIN [Sbmx_traslado].[dbo].[Sbmx_Contenedores] ON [eBob].[dbo].[tblVessel].[Contents] = [Sbmx_traslado].[dbo].[Sbmx_Contenedores].[Ingrediente] 
+0

我得到同樣的問題: 更新的值更改多行 –

相關問題