我正在尝试将xml文件导入sql表,需要解析元素名称为列,值为行
示例:
<identification-elements>
<element name="wmo_synop_id" uom="unitless" value="71203"/>
<element name="stn_nam" uom="unitless" value="Kelowna"/>
<element code-src="std_code_src" code-type="station_type" name="stn_typ" uom="code" value="12"/>
<element name="date_tm" uom="datetime" value="2018-07-11T19:00:00.000Z"/>
<element name="lat" uom="°" value="49.95722"/>
<element name="long" uom="°" value="-119.37778"/>
<element name="stn_elev" uom="m" value="429.4"/>
<element name="icao_stn_id" uom="unitless" value="CYLW"/>
<element code-src="std_code_src" code-type="report_type" name="rpt_typ" uom="code" value="0"/>
<element name="data_pvdr" uom="unitless" value="NAV CANADA"/>
<element name="data_attrib_not" uom="unitless" value="Observational data provided by NAV CANADA. All rights reserved."/>
<element name="clim_id" uom="unitless" value="1123939"/>
<element name="msc_id" uom="unitless" value="1123939"/>
</identification-elements>
有什么建议吗?
答案 0 :(得分:-1)
又快又脏。
打开文本编辑器,将XML粘贴到-另存为文本文件。
删除所有前导/尾随标签。
查找并替换为“ 查找并用','(逗号)替换'uom =' 查找并用','(逗号)替换'value =“' 查找并替换为““ />” 这样,您将获得CSV(逗号分隔的值) 来自: 收件人: 保存文件。 在MySQL中,创建具有3个字段的表
Varchar,Varchar,Int 然后使用mysql:LOAD DATA INFILE语法 将文件加载到表中。保存
<element name="wmo_synop_id" uom="unitless" value="71203"/>
"wmo_synop_id","unitless",71203