Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 LAST_INSERT_ID в Microsoft SQL Server  [new]
kim-kong
Member

Откуда:
Сообщений: 151
хочу в inserte раздать ID, есть ли функция, аналогичная LAST_INSERT_ID в Microsoft SQL Server ?
10 июн 12, 17:23    [12697711]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
Odess
Member

Откуда: Одесса, Украина
Сообщений: 6083
SCOPE_IDENTITY()
10 июн 12, 18:25    [12697762]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
kim-kong
Member

Откуда:
Сообщений: 151
Для этого нужна первая запись в таблице ?
У меня почему то не работает эта функция.

	INSERT INTO qweqwe(PID, SName, Name, GivenName, Sex, BirthDate, Pstatus, REGDate)
	SELECT SCOPE_IDENTITY(), SName, Name, GivenName, Sex, BirthDate, '1', REGDate
	FROM N_Colony
10 июн 12, 20:11    [12697874]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
kim-kong,

автор
У меня почему то не работает эта функция.


Так вызывать ее надо после вставки, а не до.
10 июн 12, 20:23    [12697890]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37139
kim-kong
У меня почему то не работает эта функция.
Вы ее просто готовить не умеете.
10 июн 12, 20:50    [12697927]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
kim-kong
Member

Откуда:
Сообщений: 151
поделитесь рецептом, пожалуйста.
10 июн 12, 21:07    [12697957]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
kim-kong,

Документацию не пробовали открывать?! http://msdn.microsoft.com/ru-ru/library/ms190315.aspx
10 июн 12, 21:31    [12698022]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 6116
Судя по
kim-kong
	INSERT INTO qweqwe(PID, SName, Name, GivenName, Sex, BirthDate, Pstatus, REGDate)
	SELECT SCOPE_IDENTITY(), SName, Name, GivenName, Sex, BirthDate, '1', REGDate
	FROM N_Colony

топикстартеру нужна вовсе не scope_identity, а identity column.
10 июн 12, 23:37    [12698235]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
kim-kong
Member

Откуда:
Сообщений: 151
Сон Веры Павловны,
Вы правы, я думал можно это сделать в инсерте.
11 июн 12, 00:36    [12698331]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
karapuz21
Member

Откуда:
Сообщений: 9
Здравствуйте!

Вопрос такой...

Есть автоматизированная система которая пишет в таблицу записи. В таблице есть столбец с уникальными номерами для этой таблицы. Каждая новая запись увеличивает значение в столбце с уникальными номерами на 1.

Но если выполнить функцию IDENT_CURRENT для это таблицы то SQL возвращает сообщение, что нету идентити.

Соответственно как определить откуда система берет новый номер для очередной записи в таблицу.

Задача состоит в том чтобы через тригер дописать еще одну запись в эту таблицу, но когда тригер добавляет новую запись система почему-то берет не последний номер записи сделаный тригером, а последний номер сделанный системой и увеличивает его на 1, получается что запись с таким номером уже существует.

Может в SQL есть отдельный объект который выступает в роли нумератора или чего-то подобного?
24 июл 12, 18:43    [12910365]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
тынц
24 июл 12, 18:51    [12910396]     Ответить | Цитировать Сообщить модератору
 Re: LAST_INSERT_ID в Microsoft SQL Server  [new]
karapuz21
Member

Откуда:
Сообщений: 9
Зайцев Фёдор,

Спасибо!
24 июл 12, 19:05    [12910441]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить