powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Как узнать Id только что добавленной записи?
7 сообщений из 7, страница 1 из 1
Как узнать Id только что добавленной записи?
    #35262740
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть база данных, в ней есть две таблицы: таблица со сведениями об организациях (organizations) и таблица о сведениях о странах (countries).
В таблице "organizations" есть поле "IdCountry", в таблице "countries" есть поле "Id" (ключевое поле).
Поля "Id" и IdCountry" связаны отношением один ко многим.
Обычно с помошью команды INSERT INTO я добавляю запись в таблицу...
А как можно узнать Id только что добавленной записи?
Только ещё один запрос SELECT делать?
А что если за эти доли секунды уже кто-то добавил ещё одну запись?
Можно ли обойтись без транзакций или нет?
_________________________________________________________________________________
Жизнь - это сплошное движение, кто-то шевелит извилинами, а кто-то хлопает ушами...
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35262782
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык это от БД зависит. Например, в Oracle есть конструкция вида
Код: plaintext
1.
2.
3.
INSERT INTO tab1 (...)
VALUES (...)
RETURNING id INTO v_Id
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35263956
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tru55Дык это от БД зависит. Например, в Oracle есть конструкция вида
Код: plaintext
1.
2.
3.
INSERT INTO tab1 (...)
VALUES (...)
RETURNING id INTO v_Id

Нет база данных Microsoft SQL Server 2005...
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35263962
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервер баз данных какой? В 2005-м MS SQL Server есть OUTPUT на INSERT / UPDATE / DELETE:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
declare @x table (a int identity, b int, c int)
declare @t table(a int, b int, c int)

insert @x (b, c)
output inserted.a, inserted.b, inserted.c into @t
select  2 ,  3 
union all
select  3 ,  4 
union all
select  5 ,  6 

select * from @t
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35264257
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolomkaЕсть база данных, в ней есть две таблицы: таблица со сведениями об организациях (organizations) и таблица о сведениях о странах (countries).
В таблице "organizations" есть поле "IdCountry", в таблице "countries" есть поле "Id" (ключевое поле).
Поля "Id" и IdCountry" связаны отношением один ко многим.
Обычно с помошью команды INSERT INTO я добавляю запись в таблицу...
А как можно узнать Id только что добавленной записи?
Только ещё один запрос SELECT делать?
А что если за эти доли секунды уже кто-то добавил ещё одну запись?
Можно ли обойтись без транзакций или нет?
_________________________________________________________________________________
Жизнь - это сплошное движение, кто-то шевелит извилинами, а кто-то хлопает ушами...

А у вас случаем, Id - не автоинкремент?

Если да, то SELECT SCOPE_IDENTITY() или SELECT @@IDENTITY. Подробности в BOL.
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35268953
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДиезА у вас случаем, Id - не автоинкремент?

Если да, то SELECT SCOPE_IDENTITY() или SELECT @@IDENTITY. Подробности в BOL.

Спасибо,
Всё получилось :-)))
...
Рейтинг: 0 / 0
Как узнать Id только что добавленной записи?
    #35269206
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Solomka ДиезА у вас случаем, Id - не автоинкремент?

Если да, то SELECT SCOPE_IDENTITY() или SELECT @@IDENTITY. Подробности в BOL.

Спасибо,
Всё получилось :-)))

Это хорошо :)

Но все-таки заглядывайте в FAQ (к слову, вопрос № 7)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Как узнать Id только что добавленной записи?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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