Sql 将xml插入XmlType字段
我在Oracle 11g中有此表:Sql 将xml插入XmlType字段,sql,oracle,insert,oracle11g,xmltype,Sql,Oracle,Insert,Oracle11g,Xmltype,我在Oracle 11g中有此表: create table tmp_test_xml ( name_xml varchar2(4000), file_xml xmltype ); 在这个链接中,我读到,为了正确地插入一个字段XMLType,我必须使用“XMLType绑定”作为这个插入: insert into tmp_test_xml values ( 'file.xml', xmltype( '<?xml
create table tmp_test_xml (
name_xml varchar2(4000),
file_xml xmltype
);
在这个链接中,我读到,为了正确地插入一个字段XMLType
,我必须使用“XMLType绑定”作为这个插入:
insert into tmp_test_xml values (
'file.xml',
xmltype(
'<?xml version="1.0" encoding="UTF-8"?>
<list_book>
<book>1</book>
<book>2</book>
<book>3</book>
</list_book>'
)
);
现在,临时用途是否具有约束力?正确的插入是什么
为什么第二次插入有效?Oracle会尝试为您执行这项工作,因此,如果您的数据类型与列数据类型不匹配,它会尝试将数据转换为正确的数据类型 因为在insert语句中有正确的xml字符串,所以数据库为您进行了到xmltype的转换 我不确定,但我怀疑是否有一个词必须使用XMLType绑定。
但是,如果您需要在从字符串创建XML时有更多的控制权,您可能需要使用它。
检查以获得一个想法
insert into tmp_test_xml values (
'file.xml',
'<?xml version="1.0" encoding="UTF-8"?>
<list_book>
<book>1</book>
<book>2</book>
<book>3</book>
</list_book>'
);