![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL
YoungerDelphist © (2008-09-10 21:41:00)Необходимо организовать добавление записей в 2 таблицы БД.
Как сделать это в SQL-запросе.
. . .
TableTest.Append;
TableTest.FieldByName('TestName').AsString := 'Test';
TableTest.Post;
ID := TableTest.FieldByName('TestID').AsInteger; // Автоинкрементное
TableTest2.Append;
TableTest2.FieldByName('Test2Code').AsInteger := ID;
TableTest2.Post;
. . .
Правильный$Вася (2008-09-11 13:27:00) [1]
> Как получить ID Добавленной записи (после первого Insert).
как вариант, знать его заранее, до первого Insert
> Ведь после выполнения Insert не происходит автоматичесого
> перемещния на добавленную запись.
в sql нет понятия "перемещение на запись"
Сергей М. (2008-09-11 13:07:00) [2]http://www.delphikingdom.com/asp/answer.asp?IDAnswer=35973
YoungerDelphist (2008-09-11 12:33:00) [3]DBISAM
Сергей М. (2008-09-11 12:26:00) [4]
> YoungerDelphist (11.09.08 11:06) [5]
СУБД какая ?
YoungerDelphist (2008-09-11 11:06:00) [5]
> в чем затык-то?
Как получить ID Добавленной записи (после первого Insert). Ведь после выполнения Insert не происходит автоматичесого перемещния на добавленную запись.
Правильный$Вася (2008-09-11 10:59:00) [6]
> Как сделать это в SQL-запросе. . . .TableTest.Append;
вот в упор не вижу тут SQL
2 последовательных INSERT через TQuery в рамках одной транзакции (TDatabase.StartTransaction)
в чем затык-то?
YoungerDelphist (2008-09-10 21:56:00) [7]Пробывал сделать вложеный запрос типа INSERT но не получилось так как не силен в SQL
YoungerDelphist (2008-09-10 21:52:00) [8]DBISAM
Sergey Masloff (2008-09-10 21:48:00) [9]Вариантов масса. В вашей постановке ответ дать невозможно (например непонятно что за СУБД - может она поддерживает анонимные блоки а может редактируемые представления - минимум два способа решить вашу задачу)