Кто-нибудь знает процедуру или скрипт, который будет генерировать любую строку в операторе вставки в ту же таблицу?
По сути, я хотел бы вызвать что-то вроде
exec RowToInsertStatement 'dbo.user', 45;
И следующий код будет output
insert into dbo.MyTable( FirstName, LastName, Position)
values( 'John', 'MacIntyre', 'Software Consultant');
Я понимаю, что могу
insert into dbo.MyTable
select * from dbo.MyTable where id=45;
Но это явно не сработает, потому что столбец ID будет жаловаться (надеюсь, он жалуется), и нет способа просто переопределить этот столбец без перечисления всех столбцов, а в некоторых таблицах может быть сотни.
Итак, знает ли кто-нибудь о процедуре, которая напишет для меня эту простую вставку?
РЕДАКТИРОВАТЬ 3:04 : Цель этого состоит в том, чтобы я мог сделать копию строки, чтобы после INSERT генерируется, я могу изменить его на что-то вроде
insert into dbo.MyTable( FirstName, LastName, Position)
values( 'Dave', 'Smith', 'Software Consultant');
.. нет, очевидно, что этот надуманный пример настолько прост, что не имеет смысла, но если у вас есть таблица с 60 столбцами, и все, что вам нужно, это изменить 3 или 4 ценностей, тогда это начинает доставлять хлопоты.
Есть ли в этом смысл?