读书人

VB如何实现自动编号

发布时间: 2012-01-31 21:28:41 作者: rapoo

VB怎么实现自动编号?
我想问下,access在设计表的时候有自动编号的功能,但是我要用VB+access做系统,access的自动编号功能有效么?如果我用VB判断表中ID的最大值然后循环+1该怎么写?怎么读最大值?

[解决办法]
我想问下,access在设计表的时候有自动编号的功能,但是我要用VB+access做系统,
access的自动编号功能有效么?

有效

如果我用VB判断表中ID的最大值然后循环+1该怎么写?

看不懂,什么循环+1?
记录的多少不是有ID的大小来判断的,是用rst.RecordCount 来判断的。

怎么读最大值?

答:select top 1 ID from 你的表名 order by desc
执行以上SQL语句后rst(0)即的值即ID最大值。


[解决办法]
1 有
2 插入的时候不用设,插入之后用SELECT @@Identity读,参考http://support.microsoft.com/kb/232144
[解决办法]
数据库的自动ID本身就会在插入后+1,1楼的降序就得到了ID值,你再以该ID为条件操作不就行了?

还有就是手动实现自动编号,大概思路如下:

设计一个表如:BhFlag,字段:MaxBh(文本),赋一初值如:"20100417001"(可以在程序中读写设置该值)。当插入时直接从表BhFlag中读取MaxBh+1,插入成功后再更新表BhFlag中的MaxBh值=ID,这样每次读取的记录数只有一条,而不用从整个被插入的表中查询得到最大ID

读书人网 >VB

热点推荐