Я никогда не работал с Triggers раньше в MSSQL, но я думаю, что это будет то, что мне нужно для этой задачи.Изменить значение столбца после INSERT, если значение соответствует критериям?
Структура таблицы как таковой:
ID|****|****|****|****|****|****|****|TOUROPERATOR
экскурсионном код оператора код, который говорит нам, что компания принадлежит полет, мы провели для них. Два из этих кодов (всего 24) устарели. Наши пользователи потребовали, чтобы эти два были изменены, но код туроператора вытащили из базы данных, которую мы не контролируем. Однако таблицу FlightData мы контролируем. Поэтому я думал, что триггер может изменить код туроператора, если он был одним из двух устаревших, вместо правильных, соответственно, когда они были вставлены.
Итак, я вошел в хорошую студию SQL Management Studio и попросил сделать триггер. Он дал мне пример кода, и вот мой псевдокод ниже:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER ChangeProvider
ON FlightData
AFTER INSERT
AS
BEGIN
IF(TheInsertedValue == Criteria)
UPDATE FlightData
SET TheInsertedValue = NewValue
ENDIF
END
GO
Я не так хорошо с этим типом программирования баз данных, так извините мои ошибки.
Как бы я это сделал?
Возможный дубликат [Как я могу редактировать значения Вкладышем в триггер SQL Server?] (Http://stackoverflow.com/questions/3580123/how-can-i-edit-values-of-an-insert-in-a-trigger-on-sql-server) –
Зачем обновлять таблицу после вставки? Почему бы не обработать код туроператора перед вставкой и вставить правильный код провайдера? –
Поскольку код вытаскивается из базы данных, мы не контролируем ее. У нас есть только доступ к этой базе данных, мы не можем манипулировать им. – OmniOwl