MS SQL 当记录不存在时插入insert INTO not exists

INSERT INTO dbo.[T_DabaoTemp]  ([PType]
           ,[pID]
           ,[NewVersion]
           ,[ParentCode]
           ,[Addtime])
 select 0,5,'2.0.1','0_3',GETDATE() WHERE not exists (
 select 1 from [T_DabaoTemp] where [PType]=0 and [pID]=5 and [NewVersion]='2.0.1')

 

存储过程

USE [UMoneyMain]
GO
/****** Object:  StoredProcedure [dbo].[UMoney_T_DabaoTemp_Insert]    Script Date: 04/09/2014 10:19:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*
----------------------------------------------------------------------------------------------------
-- Date Created: 2014年4月8日 16:27
-- Created By:王朝理
-- Purpose: 向表 T_DabaoTemp 中插入数据
-- 表说明
----------------------------------------------------------------------------------------------------
*/
CREATE PROCEDURE [dbo].[Temp_Insert]
(
 @Id int output, --  
 @PType int = 0 , --  
 @pID int = 0 , --  
 @NewVersion varchar(50) = null , --  
 @ParentCode varchar(50) = null , --  
 @Addtime datetime = null  --  
)
AS     
SET NOCOUNT ON
 if (@Addtime is null)
 begin
  set @Addtime = getdate()
 end
 INSERT INTO dbo.[T_DabaoTemp]  ([PType]
           ,[pID]
           ,[NewVersion]
           ,[ParentCode]
           ,[Addtime])
 select @PType,@pID,@NewVersion,@ParentCode,@Addtime WHERE not exists (
 select 1 from [T_DabaoTemp] where [PType]=@PType and [pID]=@pID and [NewVersion]=@NewVersion)
  
  
 SET @Id = SCOPE_IDENTITY()

转载于:https://www.cnblogs.com/yeye518/p/3653728.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值