用VC往数据库中插入一条记录后,如何快速得到此记录的ID?? 直接去读你的ID域不就完了GetFieldValue…… 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 _variant_t theVal=GetCollect(_T("id")); 这的确是个问题。各位大侠:是指使用SQL语句(INSERT)后再GetFieldValue()?不会吧。要是人家根本就没有打开表呢?(只打开数据库再执行INSERT INTO...) 你参考一下http://www.csdn.net/expert/topic/738/738684.xml吧。 添加后,这条记录在最后,直接MoveLast()应该可以吧,然后就能得到这条记录的ID了 恐怕不能做这样的假设吧。这样写出来的程序Bug肯定不少。 lshadow大侠,好象没有哪个数据库的手册说添加的记录一定会在最后吧(虽然实际上都是如此)。我同意yyszh。 插入后用下面的语句打开一个记录集试试:select top 1 ID from your_table order by ID desc当然此时ID应有一个唯一索引,不然速度就慢了。 这个问题非常简单,泥任外生成一个RecorderSet类只选MAX(ID)为属性就OK本人已实现你的想法 如果使用的是Sql Server,可以用@@IDENTITY来得到,不知Access中如何实现。 washingli 做法合理,安全。 washingli的做法实际上就是写入数据后再读出记录集,找出相应ID。而且这个做法与lshadow(光影)有相同的BUG。我想ACCESS应该有自己独特的方法,有空我查一下文档。(我想在插入记录之前就应该可以得到下一条空记录的ID,一定有办法的。) 求 监视 window 的网络数据流/包的工具 推荐 内存只读错误 SSL 在邮件代理服务器中应用问题? 外网服务器怎么主动连接内网电脑呢?? LCD顾客显示屏 请教 MSFlexGrid 的简单问题!! 怎样判断当前操作系统的版本是Windows 98还是Windows 2000??? 为什么不能显示ICON??? 在InitInstance()中我决定退出程序,如何才能设定ExitCode? 创建远程线程的时候直接导致目标进程崩溃 怎样用vb 对spl表中的数据 进行条件查询? VCD是什么文件?
是指使用SQL语句(INSERT)后再GetFieldValue()?
不会吧。要是人家根本就没有打开表呢?(只打开数据库再执行INSERT INTO...)
http://www.csdn.net/expert/topic/738/738684.xml
吧。
lshadow大侠,好象没有哪个数据库的手册说添加的记录一定会在最后吧(虽然实际上都是如此)。我同意yyszh。
select top 1 ID from your_table order by ID desc
当然此时ID应有一个唯一索引,不然速度就慢了。
只选MAX(ID)为属性就OK
本人已实现你的想法
washingli的做法实际上就是写入数据后再读出记录集,找出相应ID。而且这个做法与lshadow(光影)有相同的BUG。我想ACCESS应该有自己独特的方法,有空我查一下文档。(我想在插入记录之前就应该可以得到下一条空记录的ID,一定有办法的。)