暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 从文件夹中搜索和查找pdf并作为附件发送电子邮件的PLsql代码

askTom 2017-04-11
442

问题描述

嗨,Oracle,

我有一个要求-从文件夹/目录中搜索并找到pdf,然后通过电子邮件发送给特定的收件人。

以下是有关场景的更多信息:

我们已经在一个文件夹/目录中生成了pdf文件
我们需要将pdf文件发送给我们业务的相应成员 (如适用)。例如: 1个成员可以有1个pdf或2或3个。
我们已经有成员列表和他们的订单号,他们的电子邮件id在表中,我们可以将这些值作为输入传递给anmy pl/sql过程。

当我将日期参数传递给我的plsql脚本时,它会找到所有memebr及其订单号,来自数据库的电子邮件id。

我们希望通过我们提供的订单号从文件夹/目录搜索中找到pdf,并找到这些pdf,并将其附加在电子邮件中并发送给会员电子邮件id。

请指教,这是非常紧急的请求。


问候
山姆

专家解答

你可以做这样的事情来访问目录

sql> create directory temp as 'c:\temp';

directory created.

sql> create directory bin as 'c:\bin';

Directory created.

SQL> host touch c:\temp\dummy_file.dat

SQL> host cat c:\temp\dir_list.cmd
@echo off
dir /s /b C:\oracle\doc\*.pdf

SQL> create table pdf_files
  2  ( file_name varchar2(255)
  3  )
  4  organization external
  5  (
  6    type oracle_loader
  7    default directory temp
  8    access parameters
  9    (
 10       records delimited by newline
 11       preprocessor bin: 'dir_list.cmd'
 12    )
 13    location ('dummy_file.dat')
 14  )
 15  reject limit unlimited;

Table created.


因此,我们有一个外部表,它将运行 “dir_list.cmd” 文件,该文件依次显示给定目录下的所有pdf。

因此它变成了你可以查询的东西

SQL> select * from  pdf_files where rownum < 10;

FILE_NAME
---------------------------------------------------------
C:\oracle\doc\10.2\B19306_01\appdev.102\a58231.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\a96109.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14249.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14250.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14251.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14252.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14253.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14254.pdf
C:\oracle\doc\10.2\B19306_01\appdev.102\b14255.pdf

9 rows selected.


一旦你有了你需要的pdf,你可以通过浏览器下载,例如

https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::p11_question_id:232814159006

或者作为电子邮件附件发送,在这个网站上搜索UTL_MAIL或UTL_SMTP


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论