|
|
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
Имеем таблицы T1 и T2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Можно в них вставлять строки одним запросом? Спасибо за ответ, даже если окажется, что нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 13:19:57 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
Нельзя, однако :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 13:33:36 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
Разве что в тригере сделать автодобавление. Однако, станет ли ваш код более читабельный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 13:38:15 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
можно - через обновляемые виды ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 13:42:08 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
Я попробовал сделать самый простой VIEW: Код: plaintext 1. 2. Но он не получился обновляемым... Чтобы сделать такой VIEW обновляемым обязательно писать триггеры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 13:56:18 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
Если не удается сделать это одним запросом, то что надо предусмотреть при программировании? Открывать транзакцию, добавлять запись в Т1, искать в Т1 последний добавленный мною номер (или там какой-то LastID, говорят, есть), использовать этот номер при добавлении в Т2, закрывать транзакцию... Примерно так? Пример кода хранимой процедуры, делающей INSERT этих записей, можете привести? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 14:03:47 |
|
||
|
Можно одним запросом добавить записи сразу в две связанные таблицы?
|
|||
|---|---|---|---|
|
#18+
create proc InsT1 as begin declare @ID int begin tran insert t1 (T1B) values(@v1) set @ID = @@identity --это новое id вставленной записи insert t2 (T1ID, T1N) values(@ID,@v2) commit tran end Вот и все вкратце ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 14:20:02 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32064564&tid=1819101]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 373ms |

| 0 / 0 |
