Создать хранимую процедуру.Вставьте данные из одной таблицы в другую.Выполнить каждую новую запись - PullRequest
0 голосов
/ 16 апреля 2019

У меня есть две таблицы.Мне нужна хранимая процедура (или триггер), которая выполняется каждый раз, когда новая запись добавляется в одну из таблиц.Берет эту конкретную строку и вставляет ее в другую таблицу.

Я осмотрел хранимые процедуры и кое-что увидел, как настроить процедуру, но не вижу, как конкретно выполнить процедуру ТОЛЬКО при вставке новой строки в одну из двух таблиц.

Таблица 1 (таблица, из которой я хочу извлечь процедуру) Имя: Reviewed_Renewal_Policy Столбцы (Id, UniqClient, Client, DateCreated, InsertedBy)

Эти значения вставляются в другом процессе.Итак, ценности уже есть.

Таблица 2 (введите эти значения здесь) Имя: tblLogPolicyRenewalNotes

Выполняйте эту процедуру каждый раз, когда в таблицу 1 вставляется новая запись (Reviewed_Renewal_Policy)

Я мог бы сделать это черезC # код позади, но это лишний код, который я могу выполнить на серверной части.Любая помощь будет принята с благодарностью.

РЕДАКТИРОВАТЬ: Это показывает, какие данные я хочу вставить

AFTER NEW INSERT (FROM Table name Reviewed_Renewal_Policy)
COLUMNS(Id, UniqClient, Client, DateCreated, InsertedBy)
VALUES (447, 73567, 'Aspirations Inc', '2019-04-01 00:00:00.000', 'jSmith')


INTO Table Name tblLogPolicyRenewalNotes 
Values above 

1 Ответ

4 голосов
/ 16 апреля 2019

Я верю, что это то, что вы ищете. У нас нет истинного DDL, поэтому, если есть какие-либо имена столбцов, которые нужно исправить, вам нужно исправить это:

CREATE TRIGGER DuplicateInsert ON dbo.Reviewed_Renewal_Policy 
AFTER INSERT AS BEGIN

    INSERT INTO dbo.tblLogPolicyRenewalNotes(Id, UniqClient, Client, DateCreated, InsertedBy)
    SELECT Id, UniqClient, Client, DateCreated, InsertedBy
    FROM inserted;

END;

Очевидно, вы можете переименовать триггер на что-то другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...