Kas
7
2017
7
2017
PL/SQL Mail Konu Başlığındaki Türkçe Karakter Sorunu Çözümü
Yazar Ozan Arıkan
2 Yorumlar
Merhaba,
PL/SQL ile utl_smtp paketini kullanılarak gönderilen maillerde yaşanan konu başlıklarındaki türkçe karakter sorunun çözümü için örnek kodlama aşağıdaki gibidir.
DECLARE l_mailhost VARCHAR2 (255) := ':mail host'; p_from VARCHAR2 (255) := ':gonderen mail adresi'; p_recipient VARCHAR2 (80) := ':alici mail adresi'; p_subject VARCHAR2 (80) := 'ığşçıü'; vconn UTL_SMTP.connection; crlf VARCHAR2 (2) := CHR (13) || CHR (10); i NUMBER := 1; p_body VARCHAR2 (255) := 'Deneme Maili'; BEGIN vconn := UTL_SMTP.open_connection (l_mailhost, get_smtp_port); UTL_SMTP.helo (vconn, l_mailhost); UTL_SMTP.mail (vconn, p_from); UTL_SMTP.rcpt (vconn, TRIM (p_recipient)); UTL_SMTP.open_data (vconn); UTL_SMTP.write_data (vconn, 'Content-Type' || ': ' || 'text/html' || UTL_TCP.crlf ); UTL_SMTP.write_data (vconn, 'Content-Transfer-Encoding: 8bit' || UTL_TCP.crlf ); UTL_SMTP.write_data (vconn, 'From' || ': ' || p_from || UTL_TCP.crlf); UTL_SMTP.write_data (vconn, 'Subject: ' || ' =?iso-8859-9?Q?' || UTL_RAW.cast_to_varchar2 (UTL_ENCODE.quoted_printable_encode (UTL_RAW.cast_to_raw (p_subject) ) ) || '?=' || UTL_TCP.crlf ); UTL_SMTP.write_data (vconn, UTL_TCP.crlf || p_body); UTL_SMTP.close_data (vconn); UTL_SMTP.quit (vconn); DBMS_OUTPUT.put_line ('Mail gonderildi'); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line ('Hata alındı:' || SQLERRM); END; |
Ozan Arıkan
1988 İstanbul doğumlu. İstanbul Üniversitesi Yönetim Bilişim
Sistemlerinden mezun oldu. 2012 yılından Beri Oracle e-Business
Suite Uygulama Geliştirme Fonksiyonel ve Teknik Danışman olarak
DbOptimize bünyesinde kariyerine devam etmektedir.
Mail: oznarkn@gmail.com
Sistemlerinden mezun oldu. 2012 yılından Beri Oracle e-Business
Suite Uygulama Geliştirme Fonksiyonel ve Teknik Danışman olarak
DbOptimize bünyesinde kariyerine devam etmektedir.
Mail: oznarkn@gmail.com
Latest posts by Ozan Arıkan (see all)
- Xslt üzerinde değişken tanımlanması - 07 Mart 2021
- Weblogic varsayılan java dizinin değiştirilmesi - 08 Temmuz 2020
- Jdeveloper üzerinde kaynak kodlara erişim eklentisi - 30 Mayıs 2020
Etiketler: pl sql mail mesaj konu başlığı türkçe karakter sorunu, PL/SQL, subject turkish character problem, türkçe karakter konu başlığı, UTL_SMTP
İlgili Yazılar
Teşekkürler başlık düzgün gözüküyor ancak, body kısmı için aynı işlem işe yaramıyor. Bunun için ne yapabiliriz?
Merhaba Mücait,
Aşağıdaki komutları ekleyip deneyebilirsin
.
UTL_SMTP.write_data (vconn, ‘MIME-version: 1.0’ || UTL_TCP.crlf);
UTL_SMTP.write_data (vconn,
‘Content-Type: text/html;charset=utf-8’
|| UTL_TCP.crlf
);
UTL_SMTP.write_data (vconn,
‘Content-Transfer-Encoding: quoted-printable ‘
|| UTL_TCP.crlf
);
UTL_SMTP.write_raw_data (vconn,
UTL_ENCODE.quoted_printable_encode(UTL_RAW.cast_to_raw(p_body))
);