码迷,mamicode.com
首页 > 数据库 > 详细

sqlserver 存储过程 增加

时间:2017-08-31 17:56:37      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:date   from   into   字符串类型   单引号   消息   sage   存在   code   

亲测可用

CREATE PROCEDURE [dbo].[InsertMessage](
@strTable varchar(50),         --表名
@strValues nvarchar(1000),     --要插入的数据(用英文逗号分隔),如果是字符串类型,需加单引号
@only_field varchar(20)=NULL,  --唯一性字段(列名)
@only_value varchar(20)=NULL,  --唯一性字段值
@msg nvarchar(50)=NULL         --错误消息
)
as
BEGIN SET NOCOUNT ON;
declare @sqlString varchar(5000);

IF @only_field is not null
    begin
        declare @p int;                    --查询唯一性结果
        declare @sql nvarchar(1000);       --拼接查询sql字串
        set @sql=SELECT @p=count(1) FROM  +@strTable+ WHERE  +@only_field+=+@only_value;
        exec sp_executesql @sql,N@p AS int OUTPUT,@p OUTPUT
    
        if @p > 0
            begin
                raiserror(@msg ,16,1)
                return
            end
        else
            begin
                set @sqlString = insert into +@strTable+ values (+@strValues+);
                exec(@sqlString);
            end
    end
ELSE
    begin
        set @sqlString = insert into +@strTable+ values (+@strValues+);
        exec(@sqlString);
    end
END

--execute [dbo].[InsertMessage] base._Member,"0,2,getdate(),0,1,‘4445‘,‘654321‘,‘654321‘,N‘邹柯00‘",AcctNbr,4445,N会员卡号已存在,不能重复添加!
--execute [dbo].[InsertMessage] base._Member,"0,2,getdate(),0,1,‘4445‘,‘654321‘,‘654321‘,N‘邹柯00‘",NULL,NULL,NULL

 

sqlserver 存储过程 增加

标签:date   from   into   字符串类型   单引号   消息   sage   存在   code   

原文地址:http://www.cnblogs.com/zouke1220/p/7459323.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!