我有一些 XML 试图直接加载到 MySQL 表中。我对“ROWS IDENTIFIED BY”的想法相当满意,但我被困在我想保存元素的标签和元素的文本值的地方。我将尝试解释:
我创建了一个 MySQL 表:
CREATE TABLE stat (
Type VARCHAR(40) NOT NULL,
uID VARCHAR(40) NOT NULL,
value VARCHAR(40),
created TIMESTAMP,
PRIMARY KEY (Type, uID)
);
现在我想加载这种格式的 xml:
<Employee uID="p17336">
<Name>Joe Bloggs</Name>
<Stat Type="first_name">Joe</Stat>
<Stat Type="last_name">Bloggs</Stat>
<Stat Type="birth_date">1985-07-26</Stat>
</Employee>
我想要的是每个 Stat 元素的“类型”填充 MySQL 中的“类型”列(这工作正常),然后元素的实际文本(例如“乔”)填充“值”列。我怎样才能做到这一点?目前我正在尝试:
LOAD XML LOCAL INFILE 'C:/dev/Sample/employees.xml'
INTO TABLE stat
ROWS IDENTIFIED BY '<Stat>';
并且正在正确填充所有字段,但“值”除外,它是 NULL。任何想法都非常感谢!