Как записать несколько строк одним запросом

vanchester

Всем привет.
Есть запрос:

Код (Text):
  1. mysqli_query($db, «insert into table (user) values (‘».$user_row[‘id’].»‘)»);

он добавляет в таблицу 1 строку.
В таблице 2 столбца «id» и «user». id добавляется автоматически порядковым номером.
Можно ли сделать запрос, который бы добавлял Х строк (допустим 15)
Заранее благодарствую!

 

Drunkenmunky

Можно.
В часть запроса values() вставьте эти самые values через запятую.

 

vanchester

а если их 15000 к примеру?

 

Drunkenmunky

Приемлемо.
Но принято разбивать на части
Строк по 500, 1000 и тд.
Меньше вероятность что-то потерять.

 

vanchester

Код (Text):
  1. mysqli_query($db, «insert into table (user) values(X) (‘».$user_row[‘id’].»‘)»);

или

Код (Text):
  1. mysqli_query($db, «insert into table (user) values(14582) (‘».$user_row[‘id’].»‘)»);

так сработает?

 

Drunkenmunky

Нет.

Код (Text):
  1.  
  2. values(123, 124, 125)
 

vanchester

Ничего себе! А других нет вариантов?
Дело в том, что этот Х будет всегда разным!

 

Drunkenmunky

Простой путь изучения азов SQL
Откройте любую таблицу в phpMyAdmin во вкладке «экспорт» и выберите формат SQL
Откройте выгруженный файл в текстовом редакторе.

 

miketomlin

Я не понял! @Drunkenmunky, значения для разных строк в отдельных скобках пишутся, между которыми уже ставится запятая.

 

Drunkenmunky

@miketomlin, ну, да. Типа того. Оговорился.

 

miketomlin

Цикл, implode() и т.п. Слышали о таком?
— Добавлено —
@Drunkenmunky, оговорился, ставь лайк, как бы жаба не душила :)

 

Drunkenmunky

Упс

 

miketomlin

Вообще самый вменяемый способ нахождения ответа на осн. вопрос темы – вбить в поисковике «mysql insert» и перейти в серпе на оф. сайт мускула.

Ну, или воспользоваться моим сокращателем: http://u75.ru/insert :)
— Добавлено —
Если чего-то у меня не находится/нет, пробуйте добавлять префикс mysql- к слагу или пишите мне, чтобы добавил :rolleyes:

 

mkramer

А откуда взял такой синтаксис?
Смотрим ссылку от @miketomlin

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *