Это простой пример.
Я хочу вставить данные в Table1 (Name, Age, Sex)
. Эта таблица автоматически увеличивается serial#
(int) при вставке данных.
Я хочу поставить триггер на Table1 insert
, чтобы после вставки данных он брал serial#
(int) из Table1
и помещал Serial#
и Name
в Table2
и Serial#
и some other data
в Table3
.
Возможно ли это с помощью триггеров?
или я должен выбрать (последний) Serial из table1
и вызвать insert для других таблиц, увеличив его вручную, в том же SP
, который я использовал для вставки в Table1
?
Какой подход лучше?
РЕДАКТИРОВАТЬ 1:
Предположим, таблица:
Serial | UID | Name | Age | Sex | DateTimeStamp
(int | uniqueidentifier | nvarchar | smallint | nchar | DateTime )
По умолчанию NewID()
и По умолчанию GetDate()
как UID
и DateTimeStamp
, будет ли в таблице INSERTED
Datetime-Of-Insertion в поле DatetimeStamp? То есть изначально я не вводил Serial, GUID или DatetimeStamp, они будут появляться в таблице INSERTED?
РЕДАКТИРОВАТЬ 2:
Можете ли вы указать мне хорошие книги / статьи о триггерах. Я читал мастеринг SQL Server 2005, мало что получил от него. Спасибо!