Как зарегистрировать количество строк, затронутых задачей SSIS «Выполнение SQL» - PullRequest
1 голос
/ 28 августа 2009

Когда я выполняю SQL-оператор, такой как «Выбрать ...», я вижу только «... 100%» выполнено ...

Я хочу записать количество затронутых строк.

Как мы можем это сделать?

Ответы [ 3 ]

1 голос
/ 28 августа 2009

запустить ваш SELECT из хранимой процедуры, где вы можете записать количество строк в таблицу или сделать что-нибудь еще, чтобы записать его ...

CREATE PROCEDURE SSIS_TaskA
AS

DECLARE @Rows  int

SELECT ... --your select goes here


SELECT @Rows=@@ROWCOUNT

INSERT INTO YourLogTable
        (RunDate,Message)
    VALUES
        (GETDATE(),'Selected '+CONVERT(varchar(10),ISNULL(@Rows,0))+' rows in SSIS_TaskA')

GO
0 голосов
/ 02 декабря 2009

Полагаю, вы можете использовать предложение вывода t-sql в своем выражении update или insert и записать его как переменную ssis .... или просто перенести его в таблицу sql.

вот пример ... это дерьмо, но это пример

UPDATE TOP (10) HumanResources.Employee
SET VacationHours = VacationHours * 1.25 
OUTPUT INSERTED.EmployeeID,
       DELETED.VacationHours,
       INSERTED.VacationHours,
       INSERTED.ModifiedDate
INTO @MyTableVar;

Вы можете вывести @@ ROWCOUNT в любом месте, где вам нужно.

Вот синтаксис вывода

http://technet.microsoft.com/en-us/library/ms177564.aspx

0 голосов
/ 01 сентября 2009

Когда вы используете Задачу SQL большую часть времени, когда вы указываете в качестве места назначения объект DataSet, вы можете посчитать количество строк из DataSet

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...