1
A
回答
0
函数用于创建零XML元素,我相信它可以改进:
create function add_xml_element(
p_name in varchar2,
p_value in varchar2,
p_namespaces in varchar2 default null,
p_nil_prefix in varchar2 default null,
p_nil_namespace in varchar2 default null) return XMLType is
l_result XMLType;
begin
if p_value is not null then
l_result := XMLType('<' || p_name || ' ' || p_namespaces || '>'||p_value||'</' || p_name || '>');
elsif p_nil_prefix is not null and p_nil_namespace is not null then
l_result := XMLType('<' || p_name || ' ' || p_namespaces || ' ' || p_nil_namespace || ' ' || p_nil_prefix || ':nil="true"/>');
else
raise_application_error(-20001, 'Nil prefix or namespace not provided');
end if;
return l_result;
end;
和PLSQL脚本来测试它:
declare
l_xml xmlType;
cursor c_build_xml(cp_value in varchar2) is
select
xmlElement("root",
add_xml_element(
'node',
cp_value,
null,
'i',
'xmlns:i="default"'))
from
dual;
begin
open c_build_xml('nodevalue');
fetch c_build_xml
into l_xml;
close c_build_xml;
dbms_output.put_line(l_xml.getClobVal());
open c_build_xml(null);
fetch c_build_xml
into l_xml;
close c_build_xml;
dbms_output.put_line(l_xml.getClobVal());
end;
/
脚本输出如下:
<root>
<node>nodevalue</node>
</root>
<root>
<node xmlns:i="default" i:nil="true"/>
</root>
相关问题
- 1. 如何在Oracle中生成GUID?
- 2. 如何在XSLT中动态生成名称空间XML属性?
- 3. 如何从Oracle数据库中的对象类型生成XML
- 4. 如何生成XML?
- 5. 如何生成XML
- 6. 如何在Coldfusion中生成.xml文件?
- 7. 在Oracle中生成报告?
- 8. 使用java生成Oracle报告xml
- 9. 使用Oracle SQL生成嵌套的XML
- 10. 从自引用Oracle生成XML表
- 11. 如何为数据集中为空的数据表生成XML?
- 12. 如何从Oracle ADF生成有效的xhtml/xml输出
- 13. 如何从关键值配对xml中生成名称值对的xml?
- 14. 如何动态生成XML?
- 15. 如何生成以下xml
- 16. 如何使用Oracle在表中获取XML空标记的虚拟值?
- 17. 如何用Perl的XML :: Simple生成XML?
- 18. ssms生成的xml标记中的值
- 19. 如何在J2ME中生成哈希值?
- 20. 如何在MonoTouch上生成XML?
- 21. 如何在jQuery(Javascript)中从XML生成XML?
- 22. 自动生成列空值
- 23. sqlite3更新生成空值
- 24. 空白XML正在产生与使用Cucumber.Options正在生成
- 25. 从Oracle表中生成PL/SQL中的XML文档
- 26. 如何替换XML中的空值
- 27. 如何在oracle表单生成器中居中一个oracle表单?
- 28. 生成的类中的空值
- 29. 甲骨文的Xml生成节点空
- 30. 使用php生成xml命名空间