ADO.net中如何获取新加入记录的自动编号字段值

stonespace 2008-07-21 03:37:36
使用Insert插入一个记录后,无法获得自动编号主键的值.如何获得主键的值?

另外大家都使用自动编号作为主键类型吗?如果用数字/整型作为主键,有什么优缺点?
...全文
84 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwwwb 2008-07-25
  • 打赏
  • 举报
回复
用ADO连接MDB,用
@@IDENTITY 变量
@@IDENTITY 变量是一个全局的SQL变量,用户可以用它来提取使用COUNTER数据类型的列的最后使用值。用户在提取@@IDENTITY 变量时,不能指定表的名称。返回值总是最近的通过代码插入了数据的表的COUNTER域。
SELECT @@IDENTITY
要给@@IDENTITY 值加上某个值,要将该变量用方括号括起来。
SELECT [@@IDENTITY] + 1
注意 上面SQL 语句中的@@IDENTITY变量只能通过Jet OLE DB provider 和 ADO执行提取,通过Access SQL View 用户界面提取的值将是0,另外,该值只有在通过代码插入记录时才会改变,如果通过用户接口,不管是数据表单、窗体还是Access SQL View窗口中的SQL语句, @@IDENTITY返回值都是0。因此, @@IDENTITY 的值只有在刚刚通过代码加入了记录是才是准确的。
yyaszy2 2008-07-25
  • 打赏
  • 举报
回复
写一个查询
SELECT USERID
FROM 表
ORDER BY USERID DESC;

查出后string USERID= ds.Tables[0].Rows[0][0].ToString();

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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