как получить Auto Incerment Value?

avoda
Дата: 26.04.2005 15:19:26
Здравствуйте все!

У меня вот такая проблемка:

есть таблица в которой Primery Key автоматически инкрементируется при INSERTe.
в эту таблицу я делаю инсерт при помощи

Dim cmd As New SqlCommand(sqlinsert)
cmd.Connection() = strConn
cmd.ExecuteNonQuery()

как мне получить только что сгенерировашийся ID? Функции Last или Max не подоходят, потому что база данных мульиюзерская.

Заранее благодарен!
Стр
Дата: 26.04.2005 15:34:04
судя по всему у тебя СУБД это MS SQL
наверное, нужно выполнить батч по ExecuteScalar
INSERT INTO ... VALUES(...);
SELECT SCOPE_IDENTITY();

подробнее в MSDN
Retrieving Identity or Autonumber Values
-=LL=-
Дата: 26.04.2005 15:52:08
Попробуй...
Dim i As Integer = cmd.ExecuteScalar()
Лиман Артём
Дата: 26.04.2005 16:07:05
-=LL=-
Попробуй...
Dim i As Integer = cmd.ExecuteScalar()


и что по твоему должно вернуться?
avoda
Дата: 26.04.2005 16:20:39
-=LL=-
Попробуй...
Dim i As Integer = cmd.ExecuteScalar()


не работает
avoda
Дата: 26.04.2005 16:21:45
Стр
судя по всему у тебя СУБД это MS SQL
наверное, нужно выполнить батч по ExecuteScalar
INSERT INTO ... VALUES(...);
SELECT SCOPE_IDENTITY();

подробнее в MSDN
Retrieving Identity or Autonumber Values


это нужно с DataSet оперировать, как я понял... в моем случае это не очень к месту.
vladgrig
Дата: 26.04.2005 16:27:31
автор
Функции Last или Max не подоходят, потому что база данных мульиюзерская.

Какая база???
Лиман Артём
Дата: 26.04.2005 16:31:57
SELECT SCOPE_IDENTITY(); - можно выполить отдельной командой сразу после вставки, если в однлм баче сложно
_______________________________________________________
Господи, сколько ещё не сделано... А сколько ещё предстоит не сделать...!
avoda
Дата: 26.04.2005 16:47:32
vladgrig
автор
Функции Last или Max не подоходят, потому что база данных мульиюзерская.

Какая база???


MS SQL Server 2000
vladgrig
Дата: 26.04.2005 16:52:43
автор
MS SQL Server 2000

А почему "Функции Last или Max не подоходят"???