Благодаря за цялата ви помощ.
Аз съм с SQL Server 2008 R2, моето изискване е, че трябва да вмъкна изход за съхранена процедура в нова таблица (не temp или виртуална таблица) в базата данни с 2 допълнителни колони, без да се добавят стойности.
Отговори:
0 за отговор № 1Това е пример;
create procedure proc_1
as begin
SELECT name, database_id FROM sys.databases
end;
go
create table new_tbl (
name varchar(150),
id int,
new_col1 int,
new_col2 int
)
go
declare @tab table(
name varchar(150),
id int
)
begin
insert into @tab
exec proc_1
insert into new_tbl
select name, id, 1, 2 from @tab;
end;
go
select * from new_tbl
OutPut:
master 1 1 2
tempdb 2 1 2
model 3 1 2
......
0 за отговор № 2
Създайте запаметена процедура, която ще даде колони по подразбиране като изход. например:
CREATE Процедура proc1 КАТО ЗАПОЧНЕТЕ SELECT име, database_id, 1 като Col1,2 като Col2 FROM sys.databases КРАЙ; отивам
продукцията от по-горе SP ще осигури необходимите 2 допълнителни колони.