Я должен обновить столбец в одной таблице SQL со счетчиком, хранящимся в другой таблице, и обновить эту таблицу тоже - PullRequest
0 голосов
/ 17 марта 2010

Я использую SQL Server 2005 (для тестирования) и 2007 (для производства).

Мне нужно добавить уникальный идентификатор записи ко всем записям в моей таблице в существующем столбце, используя столбец «последний идентификатор записи» из другой таблицы. Итак, я собираюсь сделать что-то вроде UPDATE моей таблицы, но я должен получить «идентификатор последней записи» из другой таблицы, увеличить его, обновить таблицу ТА и затем обновить свою запись.

Может кто-нибудь привести пример того, как это сделать? Другие пользователи также могут увеличивать счетчик.

1 Ответ

3 голосов
/ 17 марта 2010

если вы ВСТАВЛЯЕТЕ в одну таблицу, а затем ОБНОВЛЯЕТЕ (в) следующую таблицу, вы можете использовать @@ IDENTITY, чтобы получить идентификатор автоматического приращения из первой таблицы.

* 1003 Е.Г. *

INSERT INTO table1 (description) VALUES ('blah');
UPDATE table2 SET (tabel1ID = @@IDENTITY) WHERE condition

@@ IDENTITY даст вам идентификатор последней вставленной строки.

...