Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
1

INSERT INTO на 35 тысяч записей, как реализовать?

16.08.2012, 19:09. Показов 2049. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Имеется код такого вида:

MySQL
1
2
3
4
5
6
7
8
9
10
INSERT INTO Table values 
  (null,1001,'0',1,1,1,2,1,1,0,1,0,0,0,0,0,0,0,3,25043,0,0,0,1,5,0,0,0,1200,19,2,0,0,0,0,0,0,0,0,0,0,0,0,0,100,10,101,0,6,1)
, (null,1002,'0',1,2,1,2,1,1,0,1,0,0,0,0,1,0,0,3,25043,0,0,0,1,5,0,0,1,1200,19,2,0,0,0,0,0,3,3,0,0,0,0,0,0,100,10,103,0,6,1)
, (null,1003,'003',1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1004,'004',1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1005,'005',1,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1006,'006',1,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1007,'007',1,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1008,'008',1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1009,'009',1,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
Все работает и выполняется хорошо, но есть проблема, таких строк более 35 тысяч.
Если выполнять запросы кусочками по 200-300 штук то все нормально. Но хотелось бы сделать все в 1м скрипте, потмоу что вручную копировать по строкам - проблемно. Я уверен что это возможно, но пока не знаю как. Может каждые 200 строк писать некий код, который будет говорить о том, что нужно выполнить 1е 200 строк, затем приступать к следующим 200 строкам, пока не будут выполнены все 35 тысяч. Например так:

MySQL
1
2
3
4
5
6
7
8
9
10
INSERT INTO Table values 
  (null,1001,'0',1,1,1,2,1,1,0,1,0,0,0,0,0,0,0,3,25043,0,0,0,1,5,0,0,0,1200,19,2,0,0,0,0,0,0,0,0,0,0,0,0,0,100,10,101,0,6,1)
, (null,1002,'0',1,2,1,2,1,1,0,1,0,0,0,0,1,0,0,3,25043,0,0,0,1,5,0,0,1,1200,19,2,0,0,0,0,0,3,3,0,0,0,0,0,0,100,10,103,0,6,1)
 
--Ждем выполнения 1го куска кода, потом выполняем код дальше...--
 
INSERT INTO Table values 
  (null,1003,'003',1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
, (null,1004,'004',1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
........
Для чего мне нужно именно так? - От такого запроса мрет любой веб сервер.
Подскажите пожалуйста. Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.08.2012, 19:09
Ответы с готовыми решениями:

Как вставить в несколько таблиц 1,5 - 3 тысяч записей и не проиграть во времени
Имеется документ, содержащий 1500 -3000 записей. (возможно и больше) Имеется , к примеру , 2...

Как реализовать вывод блогов и записей?
у меня в системе есть несколько авторов, каждый из авторов в отведенной для него рубрики создает...

Уведомления записей сообщества VK: как реализовать?
Всем Здравствуйте! Вот недавно решил сделать прогу, которая каждые несколько минут соединяется с...

INSERT нескольких записей
Здравствуйте. Нужно написать код который будет создавать сразу несколько записей в таблице....

7
753 / 552 / 48
Регистрация: 17.06.2010
Сообщений: 1,041
Записей в блоге: 1
17.08.2012, 10:06 2
куски запихнуть в цикл пробовали?
0
2432 / 2282 / 594
Регистрация: 27.05.2011
Сообщений: 7,801
17.08.2012, 10:24 3
пхп скриптец вам может помочь
0
Эксперт по компьютерным сетямЭксперт NIX
13016 / 7407 / 801
Регистрация: 09.09.2009
Сообщений: 28,982
17.08.2012, 10:30 4
Цитата Сообщение от crautcher Посмотреть сообщение
пхп скриптец вам может помочь
а можно подробнее, мне тоже интересно.
(мой вопрос не про сам код, а про суть (ну или скажем так, идею сего действа))
0
2432 / 2282 / 594
Регистрация: 27.05.2011
Сообщений: 7,801
17.08.2012, 10:57 5
Цитата Сообщение от Dmitry Посмотреть сообщение
ну или скажем так, идею сего действа
парсим запрос на инсерты , отправляем пачками , затем можно слип повесит на пару секунд , затем следующая пачка...
0
Эксперт по компьютерным сетямЭксперт NIX
13016 / 7407 / 801
Регистрация: 09.09.2009
Сообщений: 28,982
17.08.2012, 11:18 6
понял, спасибо
0
1177 / 419 / 106
Регистрация: 31.03.2012
Сообщений: 1,145
17.08.2012, 11:31 7
Простой тестовый редактор + LOAD DATA, для данного конкретного случая может очень помочь
0
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
17.08.2012, 14:39  [ТС] 8
Все оказалось в 20 раз проще - для каждой строки нужно просто написать отдельный INSERT и все.
1
17.08.2012, 14:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.08.2012, 14:39
Помогаю со студенческими работами здесь

insert в БД несколько записей
Подскажите как можно в таблицу вставить несколько записей. Вот код, при помощи которого пытался...

Как правильней реализовать отметку просмотренных записей?
Приветствую! Подскажите кто знает, - Есть таблица с записями; - Есть таблица с данными...

Как реализовать постраничный вывод записей php
$host= 'localhost'; $db_name = 'testing'; $user = 'root'; $password = ''; $pdo...

Как лучше реализовать хранение записей (паролей)
Народ помогите советом. Нужно создать программу для хранения паролей.В этой программе я хочу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru