Mise en forme de retour chariot, saut de ligne dans Oracle PL/SQL
J'ai des problèmes concernant le corps du mail le formatage je suis d'envoi:
Ici, c'est le KO version (pas de nouvelles lignes):
declare
crlf VARCHAR2(2) := chr(13)||chr(10);
msg_body VARCHAR2(2000);
begin
msg_body := msg_body || ('Blablah : '|| SYSTIMESTAMP ) || crlf;
msg_body := msg_body || ('Blablah : '|| SYSTIMESTAMP ) || crlf;
EXECUTE IMMEDIATE 'ALTER SESSION SET smtp_out_server = ''127.0.0.1''';
UTL_MAIL.send(sender => '[email protected]', recipients => '[email protected]', subject => 'Blah', MESSAGE => msg_body);
end;
Voici le OK de la version (de nouvelles belles lignes):
declare
crlf VARCHAR2(2) := chr(13)||chr(10);
msg_body VARCHAR2(2000);
begin
msg_body := msg_body || ('Blablah : ') || crlf;
msg_body := msg_body || ('Blablah : ') || crlf;
EXECUTE IMMEDIATE 'ALTER SESSION SET smtp_out_server = ''127.0.0.1''';
UTL_MAIL.send(sender => '[email protected]', recipients => '[email protected]', subject => 'Blah', MESSAGE => msg_body);
end;
En ce qui concerne meilleur
Quelle est votre question? Votre Ok version fonctionne?
OriginalL'auteur BenoitParis | 2013-01-18
Vous devez vous connecter pour publier un commentaire.
La seule différence entre les deux versions est l'exclusion de SYSTIMESTAMP dans l'un qui fonctionne.
Vous n'êtes pas explicitement la conversion de votre SYSTIMESTAMP d'un caractère à l'aide
TO_CHAR()
. Il sera converti implicitement en fonction de votre NLS_DATE_FORMAT à la place.Convertir un personnage correctement, en utilisant tous les modèle de format vous le souhaitez, par exemple
ff
est de fractions de secondes.Pour citer
Je recommanderais enquête à l'aide de UTL_SMTP au lieu de UTL_MAIL. Vous n'avez pas besoin de modifier la session. Une, très simple, envoyer procédure pourrait ressembler à ceci:
vous traqué exactement ce qui n'allait pas avant et peut le faire à nouveau! Recherchez plus de choses que vous êtes implicitement de conversion (dates/horodateurs, etc) pour commencer, et ensuite voir si ça fonctionne...
Merci. J'ai résolu le problème, mais j'ai oublié de poster ici. J'ai été l'envoi de longues Chaînes dans le corps, et, apparemment, qui a été l'origine de la mise en forme pour être oublié. Raccourcir les Cordes entre les retours chariot a fait le tour. Peut-être il y a caché de conversion associé à de longues Cordes.
OriginalL'auteur Ben