Я пытаюсь импортировать большой файл gpx в mysql, используя LOAD DATA LOCAL INFILE
.
Проблема:
Значения LAT
и LON
не записаныв таблице, остальные уже.
Мой вопрос:
как мне обратиться к значениям LAT
и LON
, чтобы они также записывались втаблица?
Большое спасибо
Пример gpx Track:
...
<gpx>
<trk>
<trkseg>
<trkpt lat="53.549945" lon="10.025673">
<ele>39.100000</ele>
<time>2019-03-20T01:39:59.000Z</time>
<fix>3d</fix>
</trkpt>
<trkpt lat="53.549932" lon="10.025675">
<ele>38.600000</ele>
<time>2019-03-20T01:40:00.000Z</time>
<fix>3d</fix>
</trkpt>
<trkpt lat="53.549925" lon="10.025682">
<ele>38.500000</ele>
<time>2019-03-20T01:40:01.000Z</time>
<fix>3d</fix>
</trkpt>
</trkseg>
</trk>
</gpx>
...
А это мой MySql-Query, для вставки данных:
$this->db->query("
LOAD DATA LOCAL INFILE '" . $files['gpx']['tmp_name'] . "'
INTO TABLE `track`
CHARACTER SET 'utf8'
LINES STARTING BY '<trkseg>' TERMINATED BY '</trkseg>'
(@tmp)
SET
lat = ExtractValue(@tmp, '//lat'),
lon = ExtractValue(@tmp, '//lon'),
ele = ExtractValue(@tmp, '//ele'),
time = ExtractValue(@tmp, '//time'),
fix = ExtractValue(@tmp, '//fix')
");