Разобрать XML в MySQL

pylyp

Новичок
Есть XML, данные в котором меняется каждый день и каждый день надо создавать по нему новую таблицу в MySQL.
<?xml version="1.0" encoding="UTF-8"?>
<citizens>
<citizen>
<military-skills>
<military-skill>
<points>35.000</points>
</military-skill>
</military-skills>
<name>Group_33</name>
<id>1482987</id>
<level>14</level>
</citizen>
...
</citizens>
Тут только чать полей для примера, на самом деле их много.
Вариант 1. Простой. Для каждого поля сделать запрос и все работает, но хочется сделать динамический запрос.
Вариант 2. Сделать динамический запрос см. внизу. Вот тут не получается.


PHP:
//Создаем массив полей для ввода в базу
$pole = array(
"id"=>		array("INT(10) 		",		"id"),
"name"=>		array("varchar(64) 	", 		"name"),
"level"=> 		array("int(4) 		",		"level"),
"millskill"=> 	array("int(8) 		", 		"{'military-skills'}->{'military-skill'}->points")
);

//Создаем запрос на создание полей
$sql = "";
foreach ($pole as $key=>$value) {
  $sql.= ($sql!=""? "," : "" ).$key." ".$value[0];
}
$sql = "CREATE TABLE ".$datenow." (".$sql.")";

//Делаем сформированный запрос
$link2 = mysql_query ($sql) ;

//Грузим файл статистики 
$xml = simplexml_load_file('people.xml');

//Считаем количество строк в массиве
$num = count ($xml->citizen);

//Заносим данные в массив
for ($i = 0; $i < $num; $i++) {
foreach ($pole as $key=>$value){

$sql_name = $xml->citizen[$i]->name;
$sql_level = $xml->citizen[$i]->level;
$sql_millskill = $xml->citizen[$i]->{'military-skills'}->{'military-skill'}->points;

mysql_query ("INSERT INTO `$datenow` (`id`, `name`, `level`, `millskill`) VALUES ('$sql_id', '$sql_name', '$sql_level', '$sql_millskill');");

}
}
Вопрос. Как реализовать последние 4 строчки одним запросом?

что то вроде
PHP:
("INSERT INTO `$datenow` (`$key`) Values (`$xml->citizen[$i]->$value[1]`)")
Это для того, чтобы в случае изменения структуры XML файла и названия полей, не надо было переписывать половину скрипта.
 
Сверху