Вы не зашли.
Главная » SQL » Как добавить одним запросом кучу записей + редактировать существующие?
#1. TLENS Off (14)
Moderator
2014.11.15 22:10
Есть список данных которые нужно залить в базу данных.
Как сделать это одним запросом. Но при наличии существующией просто обновить ее?
#2. TLENS Off (14)
Moderator
2014.11.15 23:11
Пока что обойдусь таким костылем
Код:
span style="color: #0000BB"><?php $video_sql = []; $id_sql_select = []; $timestamp = time(); foreach ($videos as $video) { $id_sql_select[] = "'{$video['id']}'"; $description = $db->real_escape_string($video['description']); $title = $db->real_escape_string($video['title']); $video_sql[$video['id']] = "('{$video['id']}', \"$title\", \"$description\", 1, " . "{$video['duration']}, $timestamp)"; } $q_select = "SELECT `id` FROM `$this->_tableName` WHERE `id` IN (".implode(', ', $id_sql_select) . ")"; if ($r = $db->query($q_select)) { while($row = $r->fetch_assoc()) unset($video_sql[$row['id']]); } if (sizeof($video_sql)) { $q = "INSERT INTO `$this->_tableName` (`id`, `title`, `description`, `description_mini`, `duration`, `timestamp`)\n" . "VALUES ". implode(",\n", $video_sql); if (!$db->query($q)) { echo $db->error; return false; } }
#3. Gemorroj Off (107)
Administrator
2014.11.16 01:01
Есть REPLACE команда..)
#4. TLENS Off (14)
Moderator
2015.07.02 21:09
Gemorroj написал:
Есть REPLACE команда..)
А что если юзать insert into on duplicate key update?
Как по мне он более гибкий
#5. Gemorroj Off (107)
Administrator
2015.07.04 10:10
ну можешь и его. replace проще просто
Страниц: 1
Главная
WEB
PunBB Mod v0.6.2
0.015 s