问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在sqlserver2000中如何批量生成序列号

发布网友 发布时间:2022-04-09 09:20

我来回答

5个回答

懂视网 时间:2022-04-09 13:41

 1 Create procedure [dbo].[GetSerialNo] 
 2 ( 
 3 @sCode varchar(50) 
 4 ) 
 5 
 6 as 
 7 
 8 --exec GetSerialNo 
 9 
10 begin 
11 
12 Declare @sValue varchar(16), 
13 
14  @dToday datetime,  
15 
16  @sQZ varchar(50) --这个代表前缀 
17 
18 Begin Tran 
19 
20 Begin Try 
21 
22 -- 锁定该条记录,好多人用lock去锁,起始这里只要执行一句update就可以了 
23 --在同一个事物中,执行了update语句之后就会启动锁 
24 Update SerialNo set sValue=sValue where sCode=@sCode 
25 
26 Select @sValue = sValue From SerialNo where sCode=@sCode 
27 
28 Select @sQZ = sQZ From SerialNo where sCode=@sCode 
29 
30 -- 因子表中没有记录,插入初始值--基数据必须手动去创建 
31 
32 If @sValue is null 
33 
34 Begin 
35 
36 Select @sValue = convert(bigint, convert(varchar(6), getdate(), 12) + ‘000001‘) 
37 
38 Update SerialNo set sValue=@sValue where sCode=@sCode 
39 
40 end
41 
42 else 
43 
44 Begin  --因子表有记录 
45 
46 Select @dToday = substring(@sValue,1,6) 
47 
48 --如果日期相等,则加1 
49 
50 If @dToday = convert(varchar(6), getdate(), 12) 
51 
52  Select @sValue = convert(varchar(16), (convert(bigint, @sValue) + 1)) 
53 
54 else  --如果日期不相等,则先赋值日期,流水号从1开始 
55 
56  Select @sValue = convert(bigint, convert(varchar(6), getdate(), 12) +‘000001‘) 
57 
58  
59 
60 Update SerialNo set sValue =@sValue where sCode=@sCode 
61 
62 End 
63 
64 Select result = @sQZ+@sValue 
65 
66 Commit Tran 
67 
68 End Try 
69 
70 Begin Catch 
71 
72 Rollback Tran 
73 
74 Select result = ‘Error‘ 
75 
76 End Catch 
77 
78 end 
技术分享

执行:exec dbo.GetSerialNo ‘CUS‘

结果:CUS150413000001

此方法可用作生成流水号,使用update启动数据库锁,并发不会重复,可读性比较好,当然使用GUID就另当别论了。

SQlSERVER生成唯一编号

标签:

热心网友 时间:2022-04-09 10:49

会写存储过程吗?
会写触发吗?
如果会,如果能看懂以下代码你就能完成,否则,你需要看看存储过程相关的书。

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE FUNCTION V_GetStr
(
@位数 int, --需要的位数(范围1-32)
@数值 int --需要的数值
)
RETURNS varchar(32)
AS
BEGIN
declare @r varchar(16)
declare @r2 varchar(16)
declare @r3 varchar(32)
declare @r4 varchar(32)

select @r='0000000000000000'
select @r2 = @数值
select @r3 = @r + @r2
select @r4= right(@r3,@位数)
return(@r4)

END
GO

--调用示例(生成10位长度的),注意以下调用需要在存储过程中完成
--declare @IDme varchar(16)
--select @IDme = (select beyczyxx.ID from beyczyxx where beyczyxx.ID = 1 )
--select dbo.V_GetStr(10,@IDme)

热心网友 时间:2022-04-09 12:07

1.创建 SEQUENCE 对象。可以使用序列表达式(sequence expression)来引用序列对象

2.\Framework\v2.0.50727\mscorlib.dll下提供表示全局唯一标识符 (Guid)。

GUID 是一个 128 位整数(16 字节),可用于所有需要唯一标识符的计算机和网络。此标识符重复的可能性非常小.
参考资料:http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpref/html/frlrfsystemtypeclassguidtopic.asp

3.<%
dim i,j
len1=len("xs0000000001")
i=1
do while i < 200
len2=len(i)
response.write "xs"
for j=0 to len1-len2-2
response.write "0"
next
response.write i&"<br>"
i=i+1
loop
%>

4.dim aa
aa=1'这里应该是从数据库中查询该字段经过处理
response.write "xs"&left("0000000000",10-len(aa))&(aa)

热心网友 时间:2022-04-09 13:42

要收费。上网搜不到注册码或序列号。
注册机 http://search.gougou.com/search?search=%E6%B3%A8%E5%86%8C%E6%9C%BA&id=2
注册表 http://www.gougou.com/search?search=%E6%B3%A8%E5%86%8C%E8%A1%A8&restype=-1&id=10000002&ty=0&pattern=0
序列号http://www.gougou.com/search?search=%E5%BA%8F%E5%88%97%E5%8F%B7&restype=-1&id=10000002&ty=0&pattern=0
序列号生成器http://www.gougou.com/search?search=%E5%BA%8F%E5%88%97%E5%8F%B7%E7%94%9F%E6%88%90%E5%99%A8&restype=-1&id=10000002&ty=0&pattern=0
序列号更换器http://www.gougou.com/search?search=%E5%BA%8F%E5%88%97%E5%8F%B7%E6%9B%B4%E6%8D%A2%E5%99%A8&restype=-1&id=10000002&ty=0&pattern=0
破解软件 http://www.gougou.com/search?search=%E7%A0%B4%E8%A7%A3%E8%BD%AF%E4%BB%B6&restype=-1&id=10000002&ty=0&pattern=0
如果不行就不能。你想要用,上网支付。

热心网友 时间:2022-04-09 15:33

sqlserver2000批量生成序列号,要编一个程序,我已经帮你写好,用消息发给你了,请注意查收哦。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 交互设计的“根”——七大定律 交互设计原则和理论2——七大定律 七大设计原则 附近的加油站有哪些 附近的加油站有哪些地方 OBS直播,只要是点进FF14直播画面就会卡,而操作FF14游戏以外的东西直播画面就正常? OPPO RENO3 PRO和OPPO Ace2对比哪个好一点,主要看性价比和长久性? 请问在国际上开卖东西直播平台那个好? 为什么很多卖东西的直播时,都把货物的价钱说成多少米? mk专卖店可以以旧换新吗? 范冰冰与雪梨合伙直播卖货,她的带货能力究竟有多强? opporen3跟oppo RenoAce这两款好哪款好点? 请问:卖东西直播用什么好?求介绍 mk包包有霉斑在北京去哪修? oppo ace跟opporeno3 pro那款手机好用,性价比如何? 卖东西直播用什么好 我的MK包包脏了、用洗洁精等都擦不掉…应该用什么擦掉 各位,推荐一下吧,我想买手机,到底该买哪个,好纠结,oppoAce,opporeno3还有华为6? 朋友在英国帮我买了一只mk包包(不是代购)由于我人比较小只 感觉带子太长了 普通的专柜会给处理吗? 杭州东站直播基地是不是培训新手开直播的 杭州东站直播基地是不是培训新手开直播的_百度问一问 kate spade专卖店可以洗包吗? 中东直播APP 有玩家反映想用cashu 付款,有人知道cashu的覆盖范围和接入渠道吗? oppoRennoACE和Renno3哪个好? 石敢当之雄峙天东直播 yy吊丝东直播间战歌是什么 opporeno3pro和Aec2哪个更好? 咱屯子东东直播间放的是什么歌? 卖东西直播用什么好? 微信没几个人怎么加人 - 信息提示 蚊帐可以放在洗衣机里面洗吗?会不会破损。 西门子洗衣机怎么洗蚊帐呢 香烟发霉了还能抽吗? 滚筒洗衣机洗蚊帐调到哪个模式? 我的手机丢了马上打电话提示你的电话暂时无法接通是关机了吗 发霉的烟能抽吗 手机关机了, 别的手机给这个已关机的手机打电话有可能出现暂时无法接通吗? 香烟发霉还能抽吗?为什么 蚊帐怎么安装 蚊帐可以用洗衣机洗吗 烟没过保质期发霉了能抽吗 蚊帐可以在全自动滚筒洗衣机里洗? 香烟发霉还能抽吗 发霉的烟还能吸吗,有什么问题没有 打电话不是关机,不是正在通话中,而是暂时无法接通,为什么啊? 发霉的烟还可以抽吗