MySQL テーブルに直接ロードしようとしている XML があります。「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 の「タイプ」列に入力され (これは正常に機能しています)、次に要素の実際のテキスト (「Joe」など) が「値」列に入力されることです。これどうやってするの?現在私は試しています:
LOAD XML LOCAL INFILE 'C:/dev/Sample/employees.xml'
INTO TABLE stat
ROWS IDENTIFIED BY '<Stat>';
そして、NULLである「値」を除いて、すべてのフィールドに正しく入力されています。どんな考えでも大歓迎です!