日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQL Server 2008新特性 Merge 詳細見聯機手冊

系統 5064 0
      
USE AdventureWorks2008R2;
GO
CREATE PROCEDURE dbo.InsertUnitMeasure
@UnitMeasureCode nchar ( 3 ),
@Name nvarchar ( 25 )
AS
BEGIN
SET NOCOUNT ON ;
-- Update the row if it exists.
UPDATE Production.UnitMeasure
SET Name = @Name
WHERE UnitMeasureCode = @UnitMeasureCode
-- Insert the row if the UPDATE statement failed.
IF ( @@ROWCOUNT = 0 )
BEGIN
INSERT INTO Production.UnitMeasure (UnitMeasureCode, Name)
VALUES ( @UnitMeasureCode , @Name )
END
END ;
GO
-- Test the procedure and return the results.
EXEC InsertUnitMeasure @UnitMeasureCode = ' ABC ' , @Name = ' Test Value ' ;
SELECT UnitMeasureCode, Name FROM Production.UnitMeasure
WHERE UnitMeasureCode = ' ABC ' ;
GO

-- Rewrite the procedure to perform the same operations using the MERGE statement.
--
Create a temporary table to hold the updated or inserted values from the OUTPUT clause.
CREATE TABLE #MyTempTable
(ExistingCode
nchar ( 3 ),
ExistingName
nvarchar ( 50 ),
ExistingDate
datetime ,
ActionTaken
nvarchar ( 10 ),
NewCode
nchar ( 3 ),
NewName
nvarchar ( 50 ),
NewDate
datetime
);
GO
ALTER PROCEDURE dbo.InsertUnitMeasure
@UnitMeasureCode nchar ( 3 ),
@Name nvarchar ( 25 )
AS
BEGIN
SET NOCOUNT ON ;

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
WHEN NOT MATCHED THEN
INSERT (UnitMeasureCode, Name)
VALUES (source.UnitMeasureCode, source.Name)
OUTPUT deleted.
* , $action, inserted. * INTO #MyTempTable;
END ;
GO
-- Test the procedure and return the results.
EXEC InsertUnitMeasure @UnitMeasureCode = ' ABC ' , @Name = ' New Test Value ' ;
EXEC InsertUnitMeasure @UnitMeasureCode = ' XYZ ' , @Name = ' Test Value ' ;
EXEC InsertUnitMeasure @UnitMeasureCode = ' ABC ' , @Name = ' Another Test Value ' ;

SELECT * FROM #MyTempTable;
-- Cleanup
DELETE FROM Production.UnitMeasure WHERE UnitMeasureCode IN ( ' ABC ' , ' XYZ ' );
DROP TABLE #MyTempTable;
GO

SQL Server 2008新特性 Merge 詳細見聯機手冊


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 贵德县| 麦盖提县| 邵阳县| 嫩江县| 大石桥市| 旌德县| 青岛市| 马龙县| 乌兰浩特市| 桐柏县| 大港区| 磐安县| 武安市| 朝阳区| 平遥县| 永州市| 荥阳市| 象山县| 板桥市| 依兰县| 晴隆县| 防城港市| 阿巴嘎旗| 伊金霍洛旗| 奇台县| 雷山县| 宁海县| 嘉定区| 中牟县| 昭平县| 绥宁县| 扎鲁特旗| 塘沽区| 利津县| 旅游| 兴宁市| 鱼台县| 通化县| 凤阳县| 郑州市| 金坛市|