短消息发送的SQL过程

ALTER PROCEDURE [dbo].[SP_SMS_SetMsgReceiver]
 @MsgID      int,
 @Receivers           varchar(5000),
 @MobileNo     varchar(5000),
 @Type      int
           
/*

============================================================
功能: 短消息发送
参数:
 @MsgID                  int   : 消息ID
 @Receivers      varchar(5000), : 接收者字符串,用逗号相隔
 @MobileNo      varchar(5000), : 手机号码,用逗号相隔
 @Type                   int    ; 1站内用户 2站外用户
注意:    @Receivers与@MobileNo必须一一对应
============================================================

*/

AS
SET NOCOUNT ON
DECLARE @Receiver varchar(300)
DECLARE @Mobile varchar(300)


WHILE LEN(@Receivers)>0
BEGIN
 --如果不是最后一次
 IF(charindex(',',@Receivers)>0)
 BEGIN
 --截取逗号前数据
 SET @Receiver = substring(@Receivers,1,charindex(',',@Receivers)-1)
 --判断手机号码是否为空
 IF(LEN(@MobileNo)>0)
  SET @Mobile     = substring(@MobileNo,1,charindex(',',@MobileNo)-1)
 ELSE
  SET @Mobile=''
 --剪切字符串
 SET @Receivers = substring(@Receivers,charindex(',',@Receivers)+1,LEN(@Receivers)) 
 --判断手机号码是否为空
 IF(LEN(@MobileNo)>0)
  SET @MobileNo  = substring(@MobileNo,charindex(',',@MobileNo)+1,LEN(@MobileNo)) 
 ELSE
  SET @MobileNo=''
 INSERT INTO
      UDS_SMS_Receiver
   VALUES
   (@MsgID,@Receiver,@Mobile,@Type,0) 
 --print @Receiver
 --print @Mobile
 END
 ELSE
 BEGIN
  --PRINT @Receivers
  --PRINT @MobileNo
 INSERT INTO
   UDS_SMS_Receiver
   VALUES
   (@MsgID,@Receivers,@MobileNo,@Type,0)  
  BREAK
 END


END

SET NOCOUNT OFF

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值