初学的疑问!

rambo2008 2011-11-03 03:31:08
下面是一个存储过程,小弟初学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
...全文
144 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenguang79 2011-11-04
  • 打赏
  • 举报
回复
as就相当于说,我们开始运行吧.哈哈。。。。。
之苒 2011-11-03
  • 打赏
  • 举报
回复
联机丛书 果然不错诶!
pengxuan 2011-11-03
  • 打赏
  • 举报
回复
联机帮助是个不错的工具,多看看能学不少东西
毛师兄 2011-11-03
  • 打赏
  • 举报
回复
学习ING~~~
冰天 2011-11-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 qianjin036a 的回复:]
SQL code
CREATE PROCEDURE sp_UpdateSMSState --过程名
@VId int, --过程的参数
@State int
AS --下面过程开始

begin --如是初学,最好在AS下面加 begin,并在最后加end

if @State=1 --条件
Update……
[/Quote]

很清楚!很认真!
houyajin 2011-11-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 qianjin036a 的回复:]

SQL code
CREATE PROCEDURE sp_UpdateSMSState --过程名
@VId int, --过程的参数
@State int
AS --下面过程开始

begin --如是初学,最好在AS下面加 begin,并在最后加end

if @State=1 --条件
Update oa_SMS……
[/Quote]

详解了,可以看看存储过程的格式。
dgywj 2011-11-03
  • 打赏
  • 举报
回复
学习学习...
rambo2008 2011-11-03
  • 打赏
  • 举报
回复
现在问题是这样: VId只是代表:一个手机的ID,现在领导让把VId改为TaskId。
TaskId(任务表)代表:SMSTask 中任务ID,也就是同时验证一批手机的ID的状态,因为可能同时发送多条短信(1000条),一个个去验证状态效率太低。
oa_SMSTaskReceiver表中,还有一个Phone字段(手机号码),现在让把Phone字段也加进来,这样才能获得一批号码中,有哪几个Phone发送成功了,怎么做呢??
rambo2008 2011-11-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 perfectaction 的回复:]

看样子短信息发送成功就更新成1状态,并更新发送完成时间
其它不成功的情况就只更新状态了

看起来一个语句也可以噢
Update oa_SMSTaskReceiver
set SendState=@State,SendTime= case when @State=1 then getdate() else SendTime end
where VId=@VId
[/Quote]

perfectaction大哥真厉害,竟然一眼看出来啦,这确实是一个“MAS服务器收发短信”项目。
现在问题是这样: VId只是代表:一个手机的ID,现在领导让把VId改为TaskId。
TaskId(任务表)代表:SMSTask 中任务ID,也就是同时验证一批手机的ID的状态,因为可能同时发送多条短信(1000条),一个个去验证状态效率太低。
oa_SMSTaskReceiver表中,还有一个Phone字段(手机号码),现在让把Phone字段也加进来,这样才能获得一批号码中,有哪几个Phone发送成功了,怎么做呢??

rambo2008 2011-11-03
  • 打赏
  • 举报
回复
大家都是高手啊!!!
yq510457 2011-11-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 qianjin036a 的回复:]
SQL code

CREATE PROCEDURE sp_UpdateSMSState --过程名
@VId int, --过程的参数
@State int
AS --下面过程开始

begin --如是初学,最好在AS下面加 begin,并在最后加end

if @State=1 --条件
Upda……
[/Quote]

+1
nzperfect 2011-11-03
  • 打赏
  • 举报
回复
看样子短信息发送成功就更新成1状态,并更新发送完成时间
其它不成功的情况就只更新状态了

看起来一个语句也可以噢
Update oa_SMSTaskReceiver
set SendState=@State,SendTime= case when @State=1 then getdate() else SendTime end
where VId=@VId
--小F-- 2011-11-03
  • 打赏
  • 举报
回复
AS后面接具体内容
建议楼主去看看联机丛书
-晴天 2011-11-03
  • 打赏
  • 举报
回复
CREATE PROCEDURE sp_UpdateSMSState   --过程名
@VId int, --过程的参数
@State int
AS --下面过程开始

begin --如是初学,最好在AS下面加 begin,并在最后加end

if @State=1 --条件
Update oa_SMSTaskReceiver --在IF块中如何更新
set SendState=@State,SendTime=getdate()
where VId=@VId
else
Update oa_SMSTaskReceiver --在else块中如何更新
set SendState=@State
where VId=@VId

end
GO

-晴天 2011-11-03
  • 打赏
  • 举报
回复
AS 下面就是存储过程的程序内容.

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧