"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 트리거 및 UDF를 사용하여 MySQL 5.1에서 동적 이메일 알림을 보내는 방법은 무엇입니까?

트리거 및 UDF를 사용하여 MySQL 5.1에서 동적 이메일 알림을 보내는 방법은 무엇입니까?

2025-02-07에 게시되었습니다
검색:433

How to Send Dynamic Email Notifications from MySQL 5.1 Using Triggers and UDFs?

mysql 5.1에서 이메일 알림을 보내는 방법

UDF 솔루션

다른 옵션은 사용자 정의 함수 (UDF)를 만드는 것입니다. 샘플 트리거 솔루션은 다음과 같습니다.

CREATE TRIGGER test.autosendfromdrop BEFORE INSERT ON test.emaildrop
FOR EACH ROW BEGIN
  /* START THE WRITING OF THE EMAIL FILE HERE*/      
  SELECT
    concat("To: ", NEW.To),
    concat("From: ", NEW.From),
    concat("Subject: ", NEW.Subject),
    NEW.Body
  INTO OUTFILE
    "C:\\inetpub\\mailroot\\pickup\\mail.txt"
  FIELDS TERMINATED BY '\r\n' ESCAPED BY '';
END;

이메일 본문을 표시

CREATE FUNCTION `HTMLBody`(Msg varchar(8192))
RETURNS varchar(17408) CHARSET latin1 DETERMINISTIC
BEGIN
  declare tmpMsg varchar(17408);
  set tmpMsg = cast(concat(
    'Date: ', date_format(NOW(), '%e %b %Y %H:%i:%S -0600'), '\r\n',
    'MIME-Version: 1.0', '\r\n',
    'Content-Type: multipart/alternative;', '\r\n',
    ' boundary=\"----=_NextPart_000_0000_01CA4B3F.8C263EE0\"', '\r\n',
    'Content-Class: urn:content-classes:message', '\r\n',
    'Importance: normal', '\r\n',
    'Priority: normal', '\r\n', '', '\r\n', '', '\r\n',
    'This is a multi-part message in MIME format.', '\r\n', '', '\r\n',
    '------=_NextPart_000_0000_01CA4B3F.8C263EE0', '\r\n',
    'Content-Type: text/plain;', '\r\n',
    '  charset=\"iso-8859-1\"', '\r\n',
    'Content-Transfer-Encoding: 7bit', '\r\n', '', '\r\n', '', '\r\n',
    Msg,
    '\r\n', '', '\r\n', '', '\r\n',
    '------=_NextPart_000_0000_01CA4B3F.8C263EE0', '\r\n',
    'Content-Type: text/html', '\r\n',
    'Content-Transfer-Encoding: 7bit', '\r\n', '', '\r\n',
    Msg,
    '\r\n', '------=_NextPart_000_0000_01CA4B3F.8C263EE0--'
  ) as char);
  RETURN tmpMsg;
END;
HTML 컨텐츠에 대한 이메일 본문을 올바르게 형식화하려면 다음과 같은 기능을 사용하십시오.

How to Send Dynamic Email Notifications from MySQL 5.1 Using Triggers and UDFs?
htmlbody` (MSG Varchar (8192)) Varchar (17408) Charset Latin1 결정 론을 반환합니다 시작하다 TMPMSG VARCHAR (17408) 선언; set tmpmsg = cast (concat) '날짜 :', date_format (now (), ' %e %b %y %h : %i : %s -0600'), '\ r \ n', '마임 버전 : 1.0', '\ r \ n', '내용 유형 : 멀티 파트/대안;', '\ r \ n', 'boundary = \ "---- = _ NextPart_000_0000_01ca4b3f.8c263ee0 \"', '\ r \ n', 'content-class : urn : content-classes : message', '\ r \ n', '중요성 : 정상', '\ r \ n', '우선 순위 : 정상', '\ r \ n', '', '\ r \ n', '', '\ r \ n', '이것은 마임 형식의 멀티 부위 메시지입니다.', '\ r \ n', '', '\ r \ n', '------ = _ NextPart_000_0000_01ca4b3f.8c263ee0', '\ r \ n', '콘텐츠 유형 : 텍스트/일반;', '\ r \ n', 'charset = \ "iso-8859-1 \"', '\ r \ n', 'Content-Transfer-Encoding : 7bit', '\ r \ n', '', '\ r \ n', '', '', '\ r \ n', msg, '\ r \ n', ',' ','\ r \ n ',' ','\ r \ n ', '------ = _ NextPart_000_0000_01ca4b3f.8c263ee0', '\ r \ n', '내용 유형 : 텍스트/html', '\ r \ n', 'Content-Transfer-Encoding : 7bit', '\ r \ n', '', '\ r \ n', msg, '\ r \ n', '------ = _ NextPart_000_0000_01CA4B3F.8C263EE0--' ) char); 반환 tmpmsg; 끝;

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3