Asp教程

通过asp实例结合结合ACCESS,MSSQL来更好的深入Asp学习 - 爬坡者

« [转]在MSSQL自定义函数过滤字符串[原]ACCESS和MSSQL里如何随机取出数据库的纪录 »

[原]sql语句连接数字类型变量

以下为一个存储过程,@BSM为一个标识码,i为一个从1到@MOUNT大小的整型 如果@BSM='2007 0814 100' @mount=10
那么将向表lyt_test_task插入10条数据
2007 0814 100 001,2007 0814 100 002 2007 0814 100 003 2007 0814 100 004...2007 0814 100 010

If exists(select name from sysobjects where name='Add_Task' and type='p')

drop proc Add_Task

GO

create proc Add_Task 

@ProductID int,@mount int,@bsm varchar(50)

As

Declare @i int,

@TaskSn varchar(50)

Set @i=1

While @i <= @mount

begin
--===================================
Begin

If Len(@i)=1

Set @TaskSn=@bsm+'00'+cast(@i as varchar)

If Len(@i)=2

Set @TaskSn=@bsm+'0'+cast(@i as varchar)

If Len(@i)>=3

这里如果If Len(@i)>=3改成ELSE就不行了
Set @TaskSn=@bsm+@i
是错误的,字符串和INT类型的联接必须CAST或者CONVERT转换一下
Set @TaskSn=@bsm+cast(@i as varchar)

End
--====================================
Insert lyt_test_task (ProductID,TaskSn) values(@ProductID,@TaskSn)

Set @i=@i+1

End

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Spirit Build 80710

Copyright 2007-2008 papozhe.com [asp教程] All Rights Reserved.
浙ICP备07030537号
免责申明:所有文章除特别声明,均来自网上,主要为学习用!内容仅供参考,版权归原作者。如侵犯您利益,请来信告知.
Email:papozhe$Gmail.com QQ:76336503