Нужен совет как реализовать в интерфейсе связь N:N

копосов нв
Дата: 09.10.2006 14:27:03
Смысл такой на добавление нового акта могут указать от 1 до N НТД из справочника, добавление инф-ии об Акте всё понятно - через insert в akts в рамках одной транзакции, а вот что делать с НТД для данного акта? Для добавления ключей в табл. "Нормативные документы" необходимо знать код акта... Как в рамках одной транзакции добавить акт, узнать "Код акта" и добавить ключи в "Нормативные документы"?

-----------------------------------------------------------
Информация – это то, чем я пользуюсь для принятия решений.

Бернерс-Ли
Dimitry Sibiryakov
Дата: 09.10.2006 14:31:23

копосов нв

Как в рамках одной транзакции добавить акт, узнать "Код акта" и
добавить ключи в "Нормативные документы"?

Точно так же. Добавлять INSERT-ом, узнавать SELECT-ом. За подробностями
в форум своей СУБД. Скорее всего - сразу в FAQ.

Posted via ActualForum NNTP Server 1.3

копосов нв
Дата: 09.10.2006 14:35:44
Dimitry Sibiryakov

копосов нв

Как в рамках одной транзакции добавить акт, узнать "Код акта" и
добавить ключи в "Нормативные документы"?

Точно так же. Добавлять INSERT-ом, узнавать SELECT-ом. За подробностями
в форум своей СУБД. Скорее всего - сразу в FAQ.
Posted via ActualForum NNTP Server 1.3


инфомативно однако ...
порядок действий и логику можно получить
Бектуров Роман
Дата: 09.10.2006 14:38:30
база какая ?
Dimitry Sibiryakov
Дата: 09.10.2006 14:38:46

копосов нв

порядок действий и логику можно получить

Для твоего оракула это будет примерно так:

SELECT seq.next_val from dual into :var;
INSERT INTO Акты VALUES (:var, ....);
INSERT INTO Нормативные документы VALUES (:var, ...);
COMMIT;

Posted via ActualForum NNTP Server 1.3

копосов нв
Дата: 09.10.2006 14:40:12
Бектуров Роман
база какая ?


Извинять сразу не указал
Oracle 8.1.6 <> ODAC <> Delphi 6
Бектуров Роман
Дата: 09.10.2006 14:41:12
тады см. решение Dimitry Sibiryakov :-)
копосов нв
Дата: 09.10.2006 14:48:59
после выполнения
SELECT seq.next_val from dual into :var;

другая сесия изменит значение последовательности, что тогда для
INSERT INTO Акты VALUES (:var, ....);
INSERT INTO Нормативные документы VALUES (:var, ...);

???

-----------------------------------------------------------
Информация – это то, чем я пользуюсь для принятия решений.

Бернерс-Ли
Petro123
Дата: 09.10.2006 15:28:06
копосов нв

другая сесия изменит значение последовательности, что тогда для

это специфика Oracl'a что ли? Какие проблемы?
Dmitrii K.
Дата: 09.10.2006 15:37:34
копосов нв
после выполнения
SELECT seq.next_val from dual into :var;

другая сесия изменит значение последовательности, что тогда для
INSERT INTO Акты VALUES (:var, ....);
INSERT INTO Нормативные документы VALUES (:var, ...);

???

Ну так запомни полученное значение и используй.