2

SQL Serverを使用すると、最後に挿入@@Identityした値を取得するために戻ることができます。ID

れたbを使用してこれを行う方法はありますか?

4

2 に答える 2

2

ElevateDBは、指定されたテーブルの指定された列に割り当てられた最後のID値を返す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に設定するため、INSERTの実行後に、生成/計算された列値(IDENTITY列を含む)を同じパラメーターを介して取得できます。

上記の例は、サポートフォーラムからのものです。

于 2012-04-21T13:20:38.073 に答える
0

ElevateDBは、IDまたは自動インクリメントの列タイプをサポートしていません。したがって、のような構文はありません@@Identity

于 2012-04-21T06:04:14.803 に答える