0
我被要求在SQL合併中包含一些調試PRINT語句,這是我新來的。我被告知OUTPUT並不令人滿意。SQL合併中的打印語句
MERGE Production.UnitMeasure AS target
USING (SELECT @UnitMeasureCode, @Name) AS source (UnitMeasureCode, Name)
ON (target.UnitMeasureCode = source.UnitMeasureCode)
WHEN MATCHED THEN
UPDATE SET Name = source.Name
PRINT "Updated"
WHEN NOT MATCHED THEN
INSERT (UnitMeasureCode, Name)
VALUES (source.UnitMeasureCode, source.Name)
PRINT "Inserted"
這不起作用,因爲它顯示每個條件塊應該包含單個SQL命令。
有沒有簡單的方法來實現我所追求的?
,我們已經開始用MERGE標準化的一對夫婦的原因。我在這裏拿走MERGE條件中的PRINT語句是不允許的嗎? – 2014-09-04 15:47:59
由於多種原因,我不使用合併語句在此處查看[使用SQL Server的MERGE語句時的注意事項](http://www.mssqltips.com/sqlservertip/3074/use-caution-with-sql-servers -merge語句/)。因此,我沒有太多使用Merge語句的經驗,除了output子句外,我從來沒有見過多於一條語句在Merge子句(匹配/不匹配)中執行。 – 2014-09-04 15:54:00
正如你可以在鏈接中看到的合併聲明有近13個活躍的錯誤,我建議我的團隊遠離它並堅持'IF EXISTS'的舊方法,並等到所有這些錯誤都得到修復:) – 2014-09-04 15:56:27