ORACLE目录点击无反应,执行存储过程 目录路径无效

已结贴√

问题点数:20 回复次数:4

ca56232b3bbedf9a539d07f37fffb99a.gif

3144d8b7615c79d9f638db40d5689d26.gif

a218af6549b45ee526caf607ebff1358.gif

0f8df0e29816ae721419de940fb833d1.gif

执行存储过程 目录路径无效

CREATE TABLE PEOPLE

(

PERSONID VARCHAR2(10) PRIMARY KEY,

NAME VARCHAR2(20),

ADDRESS VARCHAR2(60),

TEL  VARCHAR2(20),

FAX  VARCHAR2(20),

EMAIL VARCHAR2(40)

);

--将数据库中的数据导出成xml文件的过程

create or replace procedure db2xml(xmlfile varchar2) as

doc xmldom.DOMDocument;

ret xmldom.DOMNode;

peoplenode xmldom.DOMNode;

--遍历整个people表的游标

Cursor cur_people is select * from people;

--将people表中一行记录转换为元素

--并插入到DOM文档对像根结点PEOPLE下的过程

procedure addperson(doc xmldom.DOMDocument,people xmldom.DOMNode,

v_pid varchar2,v_name varchar2,v_addr varchar2,

v_tel varchar2,v_fax varchar2,v_email varchar2)

is

personelem xmldom.DOMElement;

personnode xmldom.DOMNode;

itemelem xmldom.DOMElement;

itemnode xmldom.DOMNode;

text xmldom.DOMText;

begin

--创建PERSON结点

personelem := xmldom.createElement(doc,'PERSON');

--设置PERSONID属性

xmldom.setAttribute(personelem,'PERSONID',v_pid);

personnode := xmldom.appendChild(peoplenode,xmldom.makeNode(personelem));

--向PERSON结点中添加NAME元素

itemelem := xmldom.createElement(doc,'NAME');

--   将NAME结点添加到PERSON结点中

itemnode := xmldom.appendChild(personnode,xmldom.makeNode(itemelem));

--   创建文本结点

text := xmldom.createTextNode(doc,v_name);

--   将文本结点添加到NAME结点下,以构成完整NAME元素

itemnode := xmldom.appendChild(itemnode,xmldom.makeNode(text));

--向PERSON结点中添加ADDRESS元素

itemelem := xmldom.createElement(doc,'ADDRESS');

itemnode := xmldom.appendChild(personnode,xmldom.makeNode(itemelem));

text := xmldom.createTextNode(doc,v_addr);

itemnode := xmldom.appendChild(itemnode,xmldom.makeNode(text));

--向PERSON结点中添加TEL元素

itemelem := xmldom.createElement(doc,'TEL');

itemnode := xmldom.appendChild(personnode,xmldom.makeNode(itemelem));

text := xmldom.createTextNode(doc,v_tel);

itemnode := xmldom.appendChild(itemnode,xmldom.makeNode(text));

--向PERSON结点中添加FAX元素

itemelem := xmldom.createElement(doc,'FAX');

itemnode := xmldom.appendChild(personnode,xmldom.makeNode(itemelem));

text := xmldom.createTextNode(doc,v_fax);

itemnode := xmldom.appendChild(itemnode,xmldom.makeNode(text));

--向PERSON结点中添加EMAIL元素

itemelem := xmldom.createElement(doc,'EMAIL');

itemnode := xmldom.appendChild(personnode,xmldom.makeNode(itemelem));

text := xmldom.createTextNode(doc,v_email);

itemnode := xmldom.appendChild(itemnode,xmldom.makeNode(text));

end addperson;

begin

--创建一个新DOM文档对像

doc := xmldom.newDOMDocument;

--为文档添加根结点PEOPLE

peoplenode := xmldom.makeNode(xmldom.createElement(doc,'PEOPLE'));

ret := xmldom.appendChild(xmldom.makeNode(doc),peoplenode);

--使用游标遍历people中的每行,生成每一行对应的PERSON元素并添加到PEOPLE根结点中

for v_row in cur_people loop

addperson(doc,peoplenode,v_row.personid,v_row.name,

v_row.address,v_row.tel,v_row.fax,v_row.email);

end loop;

--将结果写入指定文件

xmldom.writeToFile(doc,xmlfile);

xmldom.freeDocument(doc);

end db2xml;

执行存储过程的时候execute db2xml('D:\oracletoxml\userinfo.xml');  总是报

第 1 行出现错误:

ORA-29280: 目录路径无效

ORA-06512: 在 "SYS.UTL_FILE", line 33

ORA-06512: 在 "SYS.UTL_FILE", line 436

ORA-06512: 在 "XDB.DBMS_XSLPROCESSOR", line 217

ORA-29280: 目录路径无效

ORA-29280: 目录路径无效

ORA-06512: 在 "XDB.DBMS_XMLDOM", line 4416

ORA-06512: 在 "ORACLEXINGXING.DB2XML", line 65

ORA-06512: 在 line 1

各位帮忙看一下那里有问题

搜索更多相关主题的帖子:

目录 路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值