PLSQL PHP:如何将大型 xml 数据从 PLSQL 函数获取到 PHP
Posted
技术标签:
【中文标题】PLSQL PHP:如何将大型 xml 数据从 PLSQL 函数获取到 PHP【英文标题】:PLSQL PHP: How to take large xml data from PLSQL function to PHP 【发布时间】:2016-10-10 04:53:34 【问题描述】:我想使用 PLSQL 函数从 Oracle 数据库中获取所有员工 ID 到 php。我有 10000 个员工 ID,每个大小为 varchar2(10)
这是我的PLSQL函数代码:
FUNCTION view_emp_list_by_office return clob IS
ret xmltype;
BEGIN
SELECT xmlelement("employee_id_list",
XMLAGG(
xmlelement("employee",
xmlelement("emp_id", EMP_ID)
)ORDER BY EMP_NAME ASC
)
) as clob into ret
FROM TABLE_EMPLOYEE_INFO;
RETURN '<result><status >success</status>'||ret.getClobval()||'</result>';
EXCEPTION
WHEN OTHERS THEN
RETURN '<result><status>Error</status></result>';
END view_emp_list_by_office;
这是 PHP 代码:
$stid = oci_parse($conn, " begin
:result := package1.view_emp_list_by_office;
end;" );
oci_bind_by_name($stid, ':result',$ru, 247800);
$output = oci_execute($stid);
如果 xml 数据大小不是很大,则代码可以正常工作。但是当我尝试获取所有员工 ID 时,它不起作用。看起来像内存问题。如何解决这个问题?我需要修改代码吗?请帮帮我。
【问题讨论】:
您收到什么错误信息? “不大”是什么意思?您确定了似乎会破坏它的尺寸吗? 【参考方案1】:我过去遇到了一个问题,但我执行了一个存储过程并将其导出到一个文件中。不是同一种情况,但是... 检查你的 memory_limit。我认为它默认带有 64mb
【讨论】:
以上是关于PLSQL PHP:如何将大型 xml 数据从 PLSQL 函数获取到 PHP的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 XML 节点中的记录在 PHP 中编辑大型 XML 文件
如何在不使用 PHP 加载整个内容的情况下附加到大型 XML(文件)