Циклическое прохождение хранимой процедуры - электронная почта
Я пишу хранимую процедуру, которая будет отправлять оповещения по электронной почте пользователям. Вы можете отправить только 200 пользователей по электронной почте одновременно. У меня есть более 1000 пользователей для отправки электронной почты, поэтому мне нужно перебирать таблицу и получать 200 пользователей одновременно. Как мне сделать этот цикл в sql?
У меня уже есть работа с электронной почтой, мне просто нужна помощь с циклом 200 пользователей каждый раз, пока он не закончится.
1. ИП вызовет таблицу и соберет всех пользователей для определенного объекта, затем нам нужно отправить электронные письма всем этим пользователям, и ИП пройдет через всех пользователей.
Что я уже пробовал:
CREATE PROCEDURE [dbo].[sp_emailAlertJob] ( @EMAILDESC INT = 1, @FACILITY VARCHAR(5) = 'TEST' ) --WITH ENCRYPTION AS BEGIN DECLARE @SENDTO VARCHAR(4000) DECLARE @Getusers CURSOR BEGIN SET @Getusers = CURSOR FOR SELECT TOP (2) EMAIL FROM [dbo].[Employee] WHERE FACILITY = @FACILITY ORDER BY TSG_RECORD_ID DESC END OPEN @Getusers FETCH NEXT FROM @Getusers INTO @SENDTO WHILE @@FETCH_STATUS = 0 BEGIN BEGIN EXEC [sp_EmailAlert] @SENDTO,@EMAILDESC,@FACILITY END FETCH NEXT FROM @Getusers INTO @SENDTO END CLOSE @Getusers DEALLOCATE @Getusers END