asp 编号问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 00:07:07
我的CardID字段里保存有HM-CQ-050202-0001(其中050202是产品编号,0001是流水号),还有
HM-CQ-050404-0001、
HM-CQ-100202-0001、
HM-CQ-100404-0001、
HM-CQ-200202-0001、
HM-CQ-200404-0001、这些编号,我在添加的时候,如何判断分别根据流水号自动增长呢?做了好久还是做不出来
没有人会?

str1 = "HM-CQ",固定5位数字,可变,一般不会重复

呵呵,这个应该比较简单了

1。CardID分为三部分 str1 = "HM-CQ",固定5位数字,可变,一般不会重复
str2 = "050202",产品编号,固定6位数字,可变,要保证不会重复
str3 = "0001",流水号,固定4位数字,自动递增,不重复

2。每添加一个产品,自动生动一个产品编号
str1是固定已知的,str2是对每个产品来说是唯一的,已知的
那么就剩下str3的值了

3。每添加一个产品,str = str1 & "-" & str2
如str = "HM-CQ-050202",然后就去查数据库表中的CardID

Select max(CardID) from 产品表 Where left(CardID,12)='"&str&"'

得到最大的编号 maxCardID,然后
<%
dim imax:imax=0
if maxCardID <> "" Then
'imax= clng(right(maxCardID,4))
imax = split(maxCardID,"-")(3)
if imax+1 > 9999 then
Response.write "提示超过9999个记录,不能再添加"
Response.end()
end if
end if

'下面就是生成的CardID啦
newmaxCardID = str&"-"&Right("000"&clng(imax)+1,4)
%&