Mysql PDO insert

Boris

Новичок
Здравствуйте!
Скажите при таком синтаксисе в-mysqli
Код:
$sql ='INSERT INTO table(id,a1,a2)VALUES(1,1,1),(2,2,2),(3,3,3)';
mysqli_query($link,$sql);
Происходит один запрос к базе, при котором вставляется три поля?

А в PDO
Код:
$stmt = $mysqli->prepare('INSERT INTO `table`(`id`,`a1`,`a2`)VALUES(:id,:a1,:a2)');
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->bindParam(':a1', $a1, PDO::PARAM_INT);
$stmt->bindParam(':a2', $a2, PDO::PARAM_INT);

$id = 1;
$a1= 1;
$a2= 1;
$stmt->execute();

$id = 2;
$a1= 2;
$a2= 2;
$stmt->execute();

$id = 3;
$a1= 3;
$a2= 3;
$stmt->execute();
происходит 3 или 1?

Спасибо!
 

Boris

Новичок
На шаред-хостинге нет возможности, но есть локальный веб сервер и т.д. 3 - это ответ на твой вопрос.
у меня нет локального. просто я задал два вопроса относительно запроса на mysqli и pdo.
подскажите а можно сделать инсерт нескольких строк используя конструкцию pdo при одном обращении? и если да киньте ссылку где почитать, спасибо

и еще подскажите, если нет локального сервера, как мне посмотреть уже подготовленный запрос в базу с подставленными данными. в mysqli просто выводил echo , а в pdo получаю с placeholder, спасибо еще раз
 
Последнее редактирование:

AnrDaemon

Продвинутый новичок
Можно, но зачем?…
Если хочешь ускорения - отключи эмуляцию подготовленных выражений, но это ускорение будет не очень большим.
Если ты вставляешь НУ ОЧЕНЬ МНОГО строк за один раз (сотни?), включая транзакцию и периодически попинывай её для сохранения на диск.
 

Boris

Новичок
@AnrDaemon, вместе с транзакцией не более 20, но для общего развития, хотелось бы узнать, если не сложно киньте пример ссылку, спасибо
 
Сверху