C# で挿入された行 ID を取得する
AUTO_INCREMENT フィールドを使用して挿入された行の ID を取得することは、後続の処理に不可欠です。ただし、特定のシナリオでは、挿入クエリを実行しても予期した ID 値が得られない場合があります。
この問題を解決するには、次のアプローチを検討してください。
変更Insert ステートメント:
クエリで列の値を直接指定する代わりに、パラメーター プレースホルダーを使用してパラメーター値を個別に設定できます。これにより、値の適切な割り当てが保証されます:
MySqlCommand comm = connect.CreateCommand(); comm.CommandText = insertStatement; comm.Parameters.AddWithValue("@invoiceDate", invoiceDate); comm.Parameters.AddWithValue("@bookFee", bookFee); comm.Parameters.AddWithValue("@adminFee", adminFee); comm.Parameters.AddWithValue("@totalFee", totalFee); comm.Parameters.AddWithValue("@customerId", customerId);
挿入クエリの実行:
ExecuteNonQuery() を使用して挿入コマンドを実行します。このメソッドは、クエリの影響を受けた行数を返します:
int rowsAffected = comm.ExecuteNonQuery();
最後に挿入された ID を取得します:
挿入クエリが正常に実行された後、 LastInsertedId:
long id = comm.LastInsertedId;
以上がC#で最後に挿入された行IDを取得する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。