Добавление записи одновременно в несколько таблиц.

программирование базы данных sql MSSQL ms sql

Нужно при добавлении новой записи в таблицу Customer, автоматически создавать запись в таблицу Customer_inf с уже заполненным в ней полем id_c (заполняется на основе введенной в таблицу Customer информации). Все это нужно проделать средствами Ms SQL 2008.
Вопрос в том, как должен выглядеть подобный запрос и возможно ли его вообще сделать

Примечание:
В можно поподробнее или очень замечательно, если с примером, описать вариант с тригером и два insert'а в одной транзакции.
Ответы:
копайте в сторону триггеров.
Я вижу минимум 4 варианта:
1) Два INSERT в одной транзакции
2) Те же два INSERT но внутри хранимой процедуры
3) Триггер
4) Извращения вида INSERT INTO ... OUTPUT INTO
Для достижения результата, такого типа обычно используются транзакции, если есть задача создать либо 2 записи либо ни одной. (http://msdn.microsoft.com/ru-ru/library/ms188929.aspx). Транзакция может быть "обернута" в хранимую процедуру (рекомендую) либо контролироваться из кода приложения.


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.