下面是一个存储过程,小弟初学SQL,看不懂什么意思!这段代码的 AS 代表什么意思啊CREATE PROCEDURE sp_UpdateSMSState
@VId int,
@State int
AS
if @State=1
Update oa_SMSTaskReceiver
set SendState=@State,SendTime=getdate()
where VId=@VId
else
Update oa_SMSTaskReceiver
set SendState=@State
where VId=@VId
GO
@VId int,
@State int
AS
if @State=1
Update oa_SMSTaskReceiver
set SendState=@State,SendTime=getdate()
where VId=@VId
else
Update oa_SMSTaskReceiver
set SendState=@State
where VId=@VId
GO
@VId int, --过程的参数
@State int
AS --下面过程开始begin --如是初学,最好在AS下面加 begin,并在最后加endif @State=1 --条件
Update oa_SMSTaskReceiver --在IF块中如何更新
set SendState=@State,SendTime=getdate()
where VId=@VId
else
Update oa_SMSTaskReceiver --在else块中如何更新
set SendState=@State
where VId=@VIdend
GO
其它不成功的情况就只更新状态了看起来一个语句也可以噢
Update oa_SMSTaskReceiver
set SendState=@State,SendTime= case when @State=1 then getdate() else SendTime end
where VId=@VId
perfectaction大哥真厉害,竟然一眼看出来啦,这确实是一个“MAS服务器收发短信”项目。
现在问题是这样: VId只是代表:一个手机的ID,现在领导让把VId改为TaskId。
TaskId(任务表)代表:SMSTask 中任务ID,也就是同时验证一批手机的ID的状态,因为可能同时发送多条短信(1000条),一个个去验证状态效率太低。
oa_SMSTaskReceiver表中,还有一个Phone字段(手机号码),现在让把Phone字段也加进来,这样才能获得一批号码中,有哪几个Phone发送成功了,怎么做呢??
TaskId(任务表)代表:SMSTask 中任务ID,也就是同时验证一批手机的ID的状态,因为可能同时发送多条短信(1000条),一个个去验证状态效率太低。
oa_SMSTaskReceiver表中,还有一个Phone字段(手机号码),现在让把Phone字段也加进来,这样才能获得一批号码中,有哪几个Phone发送成功了,怎么做呢??