2016-04-14 19 views
0

私はトリガーを使用してUPDATEを実行しようとしています。エラートリガー。マルチパート識別子「...」をバインドできませんでした

私は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

FROMにないWHERE句のテーブルを参照しています。これを試して。

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

私は同じ問題が発生します: 更新された値は複数の行を変更します –

関連する問題