Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Получение identity значений в T-SQL / 7 сообщений из 7, страница 1 из 1
17.05.2001, 15:04
    #32005796
Сергей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
Может кто сталкивался с такой проблемой:
Первичный ключ в таблице - integer identity. MSSQL сам организует это счетчик. Но как я могу прочитать следующее значение этого счетчика ?
Функции IDENT_INCR и IDENT_SEED возвращают только начальн.значение и инкремент, а мне нужно знать "текущее значение" этого счетчика.
В Oracle есть две хорошие функции NextVal и CurVal, а как это сделать в MSSQL ?
...
Рейтинг: 0 / 0
17.05.2001, 15:50
    #32005801
zamm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
select max(ID)+1 from table1
...
Рейтинг: 0 / 0
17.05.2001, 15:57
    #32005802
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
select @@identity
select Scope_identity() (для MSSQL 2000)
...
Рейтинг: 0 / 0
17.05.2001, 16:23
    #32005803
Сергей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
К сожелению, select max(ID)+1 from table1 - работает не верно, если я делаю Delete последней записи с максимальным ID, то select max(ID)+1 даст фактически значение только что удаленной записи, а не текущее сост. счетчика
Конструкция select @@identity from [Name_Table] возвращает NULL
Проверить конструкцию для SQL2000, не могу - у меня 7-ка.
...
Рейтинг: 0 / 0
17.05.2001, 16:30
    #32005804
Получение identity значений в T-SQL
INSERT INTO tbTable ( Field ) VALUES ( 'TEST' )
SELECT @@IDENTITY

Кстати покопай в этом форуме, на эту тему здесь очень много артиклов.
Должно работать
...
Рейтинг: 0 / 0
17.05.2001, 16:39
    #32005805
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
Зачем "select @@identity from [Name_Table]"?
Нужно просто select @@identity. И никаких NULL.
...
Рейтинг: 0 / 0
17.05.2001, 16:55
    #32005808
Сергей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение identity значений в T-SQL
Ура работает! Ошибка моя была в том, что в QueryAnalizer каждое окно это отдельный коннект!
Конструкция SELECT @@IDENTITY AS 'Identity' работает так как надо!
Ребята всем спасибо!
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Получение identity значений в T-SQL / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]