T-sql, Mvc, SQL, ПОЧТА

У меня есть таблица с идентификатором входа в систему, у которого нет имени домена при отправке почты, она должна автоматически получать имя домена для отправки почты в sql, я использовал ниже запрос, мне нужно автоматически добавлять @ xxx.com в почту получателя .. начинать

Use [register ]
DECLARE @Receipientlist varchar(8000)
SET @ReceipientList =
              STUFF((SELECT ';' + Manager_Login_Id FROM dbo.Idea FOR XML PATH('')),1,1,'')

SELECT
    Idea_Id,Login_Id,Manager_Login_Id,Idea_Date_Of_Submission,Idea_Status ='PENDING'
FROM
    dbo.Idea
WHERE
    Manager_Login_Id IS NOT NULL and Idea_Date_Of_Submission <= DATEADD(day, -5, GETDATE());

EXEC msdb.dbo.sp_send_dbmail
        profile_name = '',
        recipients = @Receipientlist,
        body = 'The DB has changed',
        subject = 'DB Change';
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
0
45
1

Ответы 1

Если ваша первая переменная @RecipientList содержит пользователей ДОМЕН, вы можете просто объединить почтовый домен с Manager_Login_Id.

Use [register ]
DECLARE @Receipientlist varchar(8000)
SET @ReceipientList =
              STUFF((SELECT ';' + Manager_Login_Id+'@xxx.com ' FROM dbo.Idea FOR XML PATH('')),1,1,'')

SELECT
    Idea_Id,Login_Id,Manager_Login_Id,Idea_Date_Of_Submission,Idea_Status ='PENDING'
FROM
    dbo.Idea
WHERE
    Manager_Login_Id IS NOT NULL and Idea_Date_Of_Submission <= DATEADD(day, -5, GETDATE());

EXEC msdb.dbo.sp_send_dbmail
        profile_name = '',
        recipients = @Receipientlist,
        body = 'The DB has changed',
        subject = 'DB Change';

Я объединил, но не хочу, чтобы значения таблиц были затронуты. Ниже используется код, запрос выполнен успешно, но не может отправлять почту.

Ashok Hoskera 04.06.2018 13:15

значения таблицы не затрагиваются, поскольку вы делаете это в переменной (@Receipientlist). Если sp_send_mail выходит из строя, вы должны опубликовать сообщение об ошибке.

B3S 04.06.2018 14:20

почта поставлена ​​в очередь, но в журнале писем отображается сообщение о невозможности отправки почты с указанием получателя.

Ashok Hoskera 04.06.2018 14:36

@AshokHoskera это означает, что ваш запрос не дает ожидаемого результата: попробуйте заменить команду exec msdb.dbo.sp_send_dbmail на SELECT ReceipientList и проверьте текущее значение.

B3S 05.06.2018 14:15

Другие вопросы по теме