我有一些带有嵌套字段的数据,我想将它们导入 MySQL。可能有很多文件,因此任何可重复的脚本语言都会受到赞赏。看起来这应该比我做的更容易,但我找不到一个好的答案。
我相信最干净的方法是使用连接表,尽管在父表中也存在一个元素会很好,比如在下面的示例中它是否具有类型代码“A1”。
此处回答了一个类似的查询Parsing nested xml into denormalized table,除了那不是 MySQL 并且该数据带有唯一标识符。我的数据面临的挑战之一是数据中没有唯一标识符来创建连接表的主键。
下面的示例数据。在这里,doc-id 和 assignor 标签必须是单独的表并连接起来。数据有一个 DTD,我不包括它的价值。非常感谢任何输入!
<?xml version="1.0" encoding="UTF-8"?>
<assignment>
<assignment-record>
<reel-no>28879</reel-no>
<frame-no>97</frame-no>
<last-update-date><date>20120903</date></last-update-date>
<recorded-date><date>20120830</date></recorded-date>
<page-count>4</page-count>
<correspondent>
<name>LEE, HONG, DEGERMAN, KANG & WAIMEY</name>
<address-1>660 S. FIGUEROA ST., 23RD FL.</address-1>
<address-2>LOS ANGELES, CA 90017</address-2>
</correspondent>
<conveyance-text>ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).</conveyance-text>
</assignment-record>
<assignors>
<assignor>
<name>WOO, SUNGHO</name>
<execution-date><date>20120806</date></execution-date>
</assignor>
<assignor>
<name>CHOI, JAEYOUNG</name>
<execution-date><date>20120806</date></execution-date>
</assignor>
</assignors>
<docproperties>
<property>
<document-id>
<country>US</country>
<doc-number>13277056</doc-number>
<kind>X0</kind>
<date>20111019</date>
</document-id>
<document-id>
<country>US</country>
<doc-number>20120213136</doc-number>
<kind>A1</kind>
<date>20120823</date>
</document-id>
<title lang="en">SYSTEMS AND METHODS FOR CONTROLLING SENSOR DEVICES IN MOBILE DEVICES</title>
</property>
</docproperties>
</assignment>
</xml>