Ternick
@Ternick

Как в mysql добавить много данных за раз?

Доброго времени суток)

Суть в том, что в запросе хранится большое количество cookies, больше 100 штук обычно. И нужно все добавить в таблицу. Сейчас php берёт массив cookies и перебирает его, поочерёдно отдавая cookie в бд, это плохой вариант, так как он медленный, прям очень)

Пока есть такой монстер:
Монстер
function addCokie($mysqli, $user_id, $cookie) {
	$statement = $mysqli->prepare('INSERT INTO `cookies`(`user_id`, `domain`, `expirationDate`, `hostOnly`, `httpOnly`, `name`, `path`, `sameSite`, `secure`, `session`, `storeId`, `value`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');

	$statement->bind_param(
		"ssiiisssiiis",
		$user_id,
		$cookie['domain'],
		$cookie['expirationDate'],
		$cookie['hostOnly'],
		$cookie['httpOnly'],
		$cookie['name'],
		$cookie['path'],
		$cookie['sameSite'],
		$cookie['secure'],
		$cookie['session'],
		$cookie['storeId'],
		$cookie['value'],
	);
	
	$statement->execute();
}


Как можно загрузить в базу данных все cookies одновременно скажем?
  • Вопрос задан
  • 144 просмотра
Решения вопроса 1
karabanov
@karabanov
Системный администратор
Можно вставить одним запросом.
INSERT INTO table_name (fild1, fild2, fild2, fild4)
VALUES (‘value1′,’value2′,’value3’,’value4′),
       (‘value1′,’value2′,’value3’,’value4′),
       (‘value1′,’value2′,’value3’,’value4′);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы