使用SQL Server,您只需返回@@Identity
即可获得最后一次插入的ID
值。
有没有办法使用elevatedb?
执行此操作答案 0 :(得分:2)
ElevateDB提供LASTIDENTITY函数,该函数返回分配给指定表中指定列的最后一个标识值。
SELECT LASTIDENTITY('Customer', 'CustNo') AS LastCustNo
您还可以使用INSERT语句获取相同的信息。
EDBQuery1.SQL.Clear;
EDBQuery1.SQL.Add('INSERT INTO Table1 (ID, Text1)');
EDBQuery1.SQL.Add('VALUES(:ID, :Text1)');
EDBQuery1.Prepare;
EDBQuery1.ParamByName('Text1').AsString:='Some text';
EDBQuery1.ExecSQL;
ShowMessage(EDBQuery1.ParamByName('ID').AsString);
INSERT语句自动将所有参数设置为IN / OUT以便这样做 任何生成/计算的列值(包括IDENTITY列)都可以 执行INSERT后,通过相同的参数检索。
以上示例来自Support Forum。
答案 1 :(得分:0)
ElevateDB不支持标识或自动递增列类型。因此,没有类似@@Identity
的语法。