Скопируйте столбец из таблицы в другую таблицу в SQL Server 2008 R2 - PullRequest
0 голосов
/ 09 сентября 2011

Во всех моих таблицах есть столбец GateCode, который используется для целей репликации.

У меня есть таблица Configuration, в которой есть столбец GateCode, а все первичные ключи всех таблиц составлены из GateCode внешний ключ и ID, который идентичен.

Моя проблема в том, что я не хочу заполнять GateCode в каждой вставляемой таблице, поэтому это поле в каждой таблице заполняется автоматически из таблицы Configuration.

Что мне делать?

Я использую SQL Server 2008 R2

1 Ответ

1 голос
/ 09 сентября 2011

Если я правильно понимаю, вы хотите заполнить столбец GateCode для каждой таблицы в вашей базе данных значением, которое хранится в вашей таблице Configuration, когда любая новая строка вставляется в какую-либо из таблиц - верно?

Единственный способ, которым я это вижу, это иметь триггеры INSTEAD OF INSERT на каждой таблице.В этом триггере вы затем считали бы значение из таблицы Configuration и заполнили столбец GateCode вновь вставленными строками, так что когда произойдет фактическое INSERT, значение будет там и составной первичный ключ будетзаполнено и NOT NULL.

...