Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.23;
Скачать: CL | DM;

Вниз

id добавленной записи...   Найти похожие ветки 

 
BlackCat ©   (2003-11-27 11:26) [0]

Доброго времени суток, Уважаемые Мастера.
Ситуация такая. Имеются 2 таблицы. Связаны по ключевому полю id. В первой таблице id-автоинкрементно, а во второй нет.
Вставляю данные в первую таблицу(#id, addr, name). Потом нужно вставить другие данные во вторую таблицу(#id, norm, value), но чтобы при этом значения полей id были одинаковы.

ВНИМАНИЕ ВОПРОС:
Как узнать id записи, вставленной в первую таблицу.

Заранее благодарен.


 
DenK_vrtz ©   (2003-11-27 11:54) [1]

Если имеется связка главная таблица - подчиненная таблица, то id в подчиненную таблицу вставится автоматически при уловии, что сделан Post главной таблице


 
Vemer ©   (2003-11-27 13:38) [2]

Или запоминать id в переменной а потом вставлять из нее.


 
Anatoly Podgoretsky ©   (2003-11-27 13:44) [3]

DenK_vrtz © (27.11.03 11:54) [1]
А если Post не сделан, то никакого id нет


 
DenK_vrtz ©   (2003-11-27 14:10) [4]

Anatoly Podgoretsky © (27.11.03 13:44) [3], думаете я не знал? :)
Просто ответ надо полный давать, чтобы вопросов не возникало, типа "А почему у меня..."


 
BlackCat ©   (2003-11-28 04:36) [5]

DenK_vrtz>

Нифига он в Аксессе не вставляет id в подчиненную таблицу.
И вопрос я задавал конкретно:

Как узнать id записи, вставленной в первую таблицу.


 
BlackCat ©   (2003-11-28 04:50) [6]

(28.11.03 04:36) [5]
Извините, вставляет, но вопрос я конкретно задавал.
Как узнать id вставленной записи, если этот id - автоинкремент.


 
DenK_vrtz ©   (2003-11-28 08:24) [7]

>BlackCat ©

Если конкретно, то берешь и считываешь!

P.S. Сначала пробуй, потом выводы делай!!!


 
sniknik ©   (2003-11-28 11:24) [8]

> Вставляю данные в первую таблицу
INSERT INTO xxxx1 VALUES (addr, name)
> Потом нужно вставить другие данные во вторую таблицу
INSERT INTO xxxx2 VALUES (@@IDENTITY, norm, value)

два запроса подряд, как можно быстрей(без расчетов между ними), а лутше четыре начать с BEGIN TRANSACTION а завершить COMMIT TRANSACTION.


 
Term ©   (2003-11-28 11:34) [9]


> Как узнать id записи, вставленной в первую таблицу

для чего чтобы его потом использовать при вставке связанных записей в подчинённую?


 
Term ©   (2003-11-28 11:50) [10]

если да то вроде всё делается довольно просто
к главному датасету прицепить TDataSourse и указать его как MasterSourse у подчинённого датасета.

запросы вида:
INSERT INTO MasterTable
(id,addr, name)
VALUES (:id,:addr,:name)

INSERT INTO DetaleTable
(id,norm, value)
VALUES (:id,:norm,:value)

в событии BeforeInsert подчинённого датасета
поставь
Form1.DetaleTable.FieldByName("id").AsInteger:=Form1.MasterTable.FieldByName("id").AsInteger;

правда незнаю как правильно обработать автоинкремент, но поэкспериментируй



Страницы: 1 вся ветка

Текущий архив: 2003.12.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.012 c
14-75317
Style
2003-11-28 20:20
2003.12.23
Кто из наших Мастеров работает за бугром...???


3-75123
Вован
2003-11-26 22:55
2003.12.23
регистр и dbase


14-75313
LLL
2003-12-01 20:47
2003.12.23
Делфи и его функции


4-75447
DDS
2003-10-25 16:45
2003.12.23
Почему не скрывается запущенная прога через CreateProcess?


14-75350
cyborg
2003-11-29 13:15
2003.12.23
Дурацкие выражения