У меня есть хранимая процедура, которая что-то оценивает.Я хотел бы вызывать эту процедуру много раз с разными аргументами и вставлять все в одну таблицу.Вызов этой процедуры - это то, что я хотел бы автоматизировать.
Скажем, у меня есть две таблицы, у одной есть несколько имен, у второй таблицы есть фамилии.Я хотел бы соединить эти две таблицы, чтобы получить все возможные комбинации имен и фамилий.И затем я хотел бы вызвать свою процедуру для каждой строки объединенной таблицы.
CREATE TABLE #FN
(
FirstName varchar(255),
);
CREATE TABLE #LN
(
LastName varchar(255),
);
INSERT INTO #FN VALUES ('Augustinus'), ('Blepharo'), ('Gripus')
INSERT INTO #LN VALUES ('Sylla'), ('Petreius'), ('Cerinthus')
SELECT *
INTO #NAMES
FROM #FN
CROSS JOIN #LN
И теперь мне нужно автоматизировать следующий код, перейдя строку за строкой из #NAMES, вместо того, чтобы вводить вручнуюаргументы.
CREATE TABLE #RESULT (Val VARCHAR(10))
INSERT INTO #RESULT
EXEC('EXEC #myprocedure @arg1=''Augustinus'', @arg2=''Sylla'';
EXEC #myprocedure @arg1=''Augustinus'', @arg2=''Petreius'';
...')