Приветствую всех. При работе с БД часто требуется узнать id последней вставленной записи в таблицу. К примеру в PostgeSQL
postgres=# INSERT INTO test (name) VALUES ('My Name 1') RETURNING id;
А вот с SQL метод выглядел бы вот так
"INSERT INTO test (name) VALUES ('My Name'); SELECT ID FROM test WHERE (ID = SCOPE_IDENTITY())";
Однако используя C# ADO.NET и конструктор DataSET при его формировании надо изменить с генерированный код. Перейти к определению метода Insert и поменять метод ExecuteNonQuery(); на метод ExecuteScalar();
int returnValue = (int)this.Adapter.InsertCommand.ExecuteScalar();
Таким образом теперь легко узнать ID вставляемой записи на SQL не изобретая велосипед. А лишь используя возвращаемые методы ID строк.