社区
MS-SQL Server
帖子详情
sql server 流水号的问题
haoshiduomol
2007-05-27 10:17:59
最近做一个问卷调查,要把调查对象的回答输入数据库中,想弄个调查对象的流水号.上网一看头都大了,找到了下面这句话:
"可以把流水号保存到一个单独的表中,在真正追加数据时才更新最大流水号+1"
这样怎么实现呢?
我的库是这样建的
调查对象流水号 主键
题号 主键
答案
备注
...全文
760
15
打赏
收藏
sql server 流水号的问题
最近做一个问卷调查,要把调查对象的回答输入数据库中,想弄个调查对象的流水号.上网一看头都大了,找到了下面这句话: "可以把流水号保存到一个单独的表中,在真正追加数据时才更新最大流水号+1" 这样怎么实现呢? 我的库是这样建的 调查对象流水号 主键 题号 主键 答案 备注
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dongbuniuzai
2009-11-18
打赏
举报
回复
AA07012000001 AA是传入的参数,可以代表类型,070120是年月日的简写,000001是自动生成的流水号,在添加一条记录的时候先获取当前表中的最大流水号:AA07012000001.substring(7)即获取纯流水号,然后最大的流水号+1 。当然保存的时候AA可以省略也可以作为参数传入,年月日是插入对象时的时间。不知说的对不去还请大家执教。
dongbuniuzai
2009-11-18
打赏
举报
回复
AA07012000001 AA是传入的参数,可以代表类型,070120是年月日的简写,000001是自动生成的流水号,在添加一条记录的时候先获取当前表中的最大流水号:AA07012000001.substring(7)即获取纯流水号,然后最大的流水号+1 。当然保存的时候AA可以省略也可以作为参数传入,年月日是插入对象时的时间。不知说的对不去还请大家执教。
dongbuniuzai
2009-11-18
打赏
举报
回复
AA07012000001 AA是传入的参数,可以代表类型,070120是年月日的简写,000001是自动生成的流水号,在添加一条记录的时候先获取当前表中的最大流水号:AA07012000001.substring(7)即获取纯流水号,然后最大的流水号+1 。当然保存的时候AA可以省略也可以作为参数传入,年月日是插入对象时的时间。不知说的对不去还请大家执教。
haoshiduomol
2007-07-12
打赏
举报
回复
首先谢谢大家.这阵子做课程设计去了,一直也没关注这里.让大家久等了.
每个答题的人都要做38个题,这个人的代号是要用流水号表示的.
我现在试试把流水号保存到一个单独的表中,每当插入的时候读取这个数,然后再+1存回表中这个方法.谢谢大家的启迪.
mugua604
2007-06-11
打赏
举报
回复
题号一定要到38才换流水号吗?
JamesCui
2007-06-11
打赏
举报
回复
可以把流水号保存到一个单独的表中,在真正追加数据时才更新最大流水号+1
------------------------------------------
还是比较容易实现的,需要注意
1、Transaction 的commit
2、如果数据量比较大,需要定义多个表来保存序列号,否则会造成数据表的频繁访问大致性能下降
你需要我给写一个
qegdgh
2007-06-09
打赏
举报
回复
欢迎加入新起点群,群号(37792189),本群为DELPHI与SQL SERVER 为主,
当然群里也有其它方面的专业人员
如(asp.net(C#),java等),现在程序员都不只学一门语言的哈,
本群是以一门程序语言为主打,多种语言为基点学习的群.
本群主要功能:
1:积极的讨论各种技术;
2:让你能结交更多的朋友,学习到更多先进的技术;
3:在你无聊的时候,群里更可以什么都聊聊(但得注意素质);
为了提高群的人上线要求;如果你有Q币的话,希望能够为群做一些贡献,并有机会成为本群的管理员.
Tayloryang11
2007-06-09
打赏
举报
回复
可以在程序端解决这个问题,写一个静态方法,TOP1上一个订单号,然后把字符串转换一下,再++,获得新的订单号
hui_hui_2007
2007-06-09
打赏
举报
回复
用计算列来实现呢?
zhuowei
2007-06-09
打赏
举报
回复
新增一个表 流水号表(流水号 INT) 初始值为200700100001
然后新增加一个人的问卷结果的时候,就先 select max(流水号) from 流水号表
然后新的这个人的流水号等于 查询出的流水号 + 1
存储过程写法如下:
DECLARE @FID INT
SELECT @FID = MAX(流水号) from 流水号表
SET @FID = @FID + 1
INSERT INTO 结果表
SELECT @FID ,题目.....
haoshiduomol
2007-06-08
打赏
举报
回复
谢谢楼上的朋友们,看不大懂,不过那个说用IDENTITY列的我到是弄了,不过现在有一个问题
就是
问卷对象流水号 biging 8 用的identity列 初始值为200700100001
题号 varchar15
答案 varchar8
备注 varchar200
问卷对象流水号与题号双主键
现在能插入数据,但是每插入一个记录问卷对象流水号都自加一,问卷一共38个题,所以完成一个人的答案录入,问卷对象流水号就已经到了38.
想问下有没有什么办法,能让他第一个人的38个题的问卷对象流水号都是
200700100001 即重复38次这个达到这个效果
问卷对象流水号 题号 答案 备注
200700100001 001 A
200700100001 002 B
... ... ...
200700100001 038 D
200700100002 001 A
200700100002 002 B
... ... ...
这样用触发器可以实现么?或者别的实现方法也可以,急啊.
gd4134
2007-05-28
打赏
举报
回复
CREATE PROCEDURE [dbo].[SSNGeneratorInstre]
@SSNType varchar(100),@CurrentValue int OUTPUT
AS
update SSNGenerator set CurrentValue = CurrentValue+1 where SSNType = @SSNType
select @CurrentValue=CurrentValue from SSNGenerator where SSNType = @SSNType
51Crack
2007-05-27
打赏
举报
回复
自动增长得了
lzhcxc
2007-05-27
打赏
举报
回复
identity列
haoshiduomol
2007-05-27
打赏
举报
回复
谢谢各位
SQL
server
自动生成
流水号
自动为每一条插入的数据按照自己设定的格式生成
流水号
解决
SQL
Server
最大
流水号
的方法
本文介绍了解决
SQL
Server
最大
流水号
的两个好方法。
实战化课程:全面掌握
SQL
Server
高可用技术,从菜鸟到专家
课程系统性强,知识体系完整,覆盖90%以上的企业环境下
SQL
Server
高可用场景,课程中不仅演示详细的操作步骤,更加突出最常见的故障和
问题
,让学员少走“弯路”,不只是让学员学会“操作”更能让学员“操作”的规范...
数据库
sql
servser的
流水号
.rar
利用
sql
server
的函数方法来生成
流水号
的
sql
文件
自定义函数完成单据
流水号
的设计
自定义
SQL
SEVER函数完成单据
流水号
的设计
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章