XMLをMySQLへ、簡単にインポートする方法

30個のXMLをMySQLに入れ込むことになったので
簡単にインポートする方法をメモします。

一つ一つコピペでDBに移すのは大変なので
XMLデータを変換する方法を使います。

[MySQLテーブル構造]

・id
・name
・age

 

[XMLファイル]

 

<?xml version="1.0" encoding="utf-8" ?>
<data>
	<user>
		<name>安藤</name>
		<age>13</age>
	</user>
	<user>
		<name>加藤</name>
		<age>41</age>
	</user>
	<user>
		<name>植野</name>
		<age>35</age>
	</user>
	<user>
		<name>牧田</name>
		<age>31</age>
	</user>
	<user>
		<name>富士</name>
		<age>26</age>
	</user>
	<user>
		<name>鎌田</name>
		<age>12</age>
	</user>
	<user>
		<name>近藤</name>
		<age>25</age>
	</user>
</data>

 

 

XMLをそのままphpmyadminでインポートすると失敗する・・・うまくいかない。
一度CSVに変換してインポートするのが確実のようです。

XMLをCSVに変換する簡単な方法は
XMLEDITOR.NETを使う方法がベストです。

 

 

1.XMLEDITOR.NETでXMLを読み込む

 

 

2.表タブで切り替えて、CSV形式で保存する

そのままでは使いにくいデータを表タブで切り替えるだけで表形式に変換できます。
このデータをcsv形式で保存してこのデータを使っていきます。

3.CSVをエクセルなどの表計算ソフトで読み込む。

一番上のカラムは必要ないので削除。

 

 

4.表を整える

id/name/ageの順番でMySQLにインポートするので
id分列(A)を追加してそのままcsvで保存する。

 

 

5.DB構造によっては文字コードを変更

csvをemediterなど文字コードを変更できるエディタでUTF8(DBの構造にあわせる)に変更。

 

 

6.phpmyadminでインポート

カラムの区切り記号などチェックしてインポート!

 

 

7.インポート成功!

 

 

コレでちょっとしたXMLファイルのインポートは簡単に出来るかと思います。

 

Filed under PHP, 問題解決メモ · Tagged with

Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.