delphi+ado+sqlserver怎样在插入之后返回自增字段的值?

发布时间:2024-05-13 03:00 发布:上海旅游网

问题描述:

delphi+ado+sqlserver怎样在插入之后返回自增字段的值?
数据库有张表,一个字段是自增字段,一个是内容字段,如何在插入一条数据后得到新插入行的自增字段的值?

目前已知两种方式:
1、insert之后执行select top 1 fileId from table order by fileId desc,缺点是不能并行执行。所以暂不考虑。又不想使用锁表。

2、SELECT @@IDENTITY as fileId这种方式不知道在delphi中怎么取。

有其他办法么??

问题解答:

delphi里的query执行sql完毕后
再执行select @@Identity+1
然后adoquery1.fields[0].value 就是返回自增字段的值

写存储过程
insert ...
SELECT @@IDENTITY as fileId

delphi调用存储过程。

热点新闻