VB怎么实现自动编号?

Aries_0219 2010-04-17 01:01:48
我想问下,access在设计表的时候有自动编号的功能,但是我要用VB+access做系统,access的自动编号功能有效么?如果我用VB判断表中ID的最大值然后循环+1该怎么写?怎么读最大值?
...全文
601 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2010-04-17
  • 打赏
  • 举报
回复
1 有
2 插入的时候不用设,插入之后用SELECT @@Identity读,参考http://support.microsoft.com/kb/232144
jieweibin 2010-04-17
  • 打赏
  • 举报
回复
数据库的自动ID本身就会在插入后+1,1楼的降序就得到了ID值,你再以该ID为条件操作不就行了?

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

设计一个表如:BhFlag,字段:MaxBh(文本),赋一初值如:"20100417001"(可以在程序中读写设置该值)。当插入时直接从表BhFlag中读取MaxBh+1,插入成功后再更新表BhFlag中的MaxBh值=ID,这样每次读取的记录数只有一条,而不用从整个被插入的表中查询得到最大ID
Aries_0219 2010-04-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chinaboyzyq 的回复:]
我想问下,access在设计表的时候有自动编号的功能,但是我要用VB+access做系统,
access的自动编号功能有效么?

有效

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

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

怎么读最大值?

答:select top 1 ID from 你的表……
[/Quote]

就是ID自动编号,我想得到最大的那个ID然后操作
chinaboyzyq 2010-04-17
  • 打赏
  • 举报
回复
我想问下,access在设计表的时候有自动编号的功能,但是我要用VB+access做系统,
access的自动编号功能有效么?

有效

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

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

怎么读最大值?

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

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧