Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / В чем отличие различных записей insert / 12 сообщений из 12, страница 1 из 1
25.07.2013, 16:50:22
    #38343996
bizisoft
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
Здраствуйте.

Поиск по форуму и интернету не помог, как только не пробовал комбинировать ключевые слова, подобрать нужное не получилось, т.к. даже не знаю как должно звучать правильно.

Подскажите пожалуйста в чем отличие следующих вариантов записи запроса на вставку данных.

1)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
insert (перечень полей) value (перечень данных 1);
insert (перечень полей) value (перечень данных 2);
insert (перечень полей) value (перечень данных 3);
insert (перечень полей) value (перечень данных 4);
insert (перечень полей) value (перечень данных 5);
insert (перечень полей) value (перечень данных 6);
insert (перечень полей) value (перечень данных 7);
insert (перечень полей) value (перечень данных 8);
insert (перечень полей) value (перечень данных 9);
insert (перечень полей) value (перечень данных 10);


2)
Код: sql
1.
2.
insert (перечень полей) value (перечень данных1), (перечень данных 2),  (перечень данных 3), (перечень данных 4), (перечень данных 5);
insert (перечень полей) value (перечень данных6), (перечень данных 7),  (перечень данных 8), (перечень данных 9), (перечень данных 10);



Вариант 2) присутствует, если делать дамп базы в phpAdmin или SQLYog в sql файл.

Имеется-ли какое-либо отличие помимо написания, может 2) меньше нагружает сервер?

C Уважением, Дмитрий.
...
Рейтинг: 0 / 0
25.07.2013, 17:02:35
    #38344018
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
http://dev.mysql.com/doc/refman/5.5/en/insert.html

автор INSERT statements that use VALUES syntax can insert multiple rows. To do this, include multiple lists of column values, each enclosed within parentheses and separated by commas. Example:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
...
Рейтинг: 0 / 0
25.07.2013, 17:02:54
    #38344019
Megabyte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
bizisoftЗдраствуйте.

Поиск по форуму и интернету не помог, как только не пробовал комбинировать ключевые слова, подобрать нужное не получилось, т.к. даже не знаю как должно звучать правильно.

Подскажите пожалуйста в чем отличие следующих вариантов записи запроса на вставку данных.

1)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
insert (перечень полей) value (перечень данных 1);
insert (перечень полей) value (перечень данных 2);
insert (перечень полей) value (перечень данных 3);
insert (перечень полей) value (перечень данных 4);
insert (перечень полей) value (перечень данных 5);
insert (перечень полей) value (перечень данных 6);
insert (перечень полей) value (перечень данных 7);
insert (перечень полей) value (перечень данных 8);
insert (перечень полей) value (перечень данных 9);
insert (перечень полей) value (перечень данных 10);


2)
Код: sql
1.
2.
insert (перечень полей) value (перечень данных1), (перечень данных 2),  (перечень данных 3), (перечень данных 4), (перечень данных 5);
insert (перечень полей) value (перечень данных6), (перечень данных 7),  (перечень данных 8), (перечень данных 9), (перечень данных 10);



Вариант 2) присутствует, если делать дамп базы в phpAdmin или SQLYog в sql файл.

Имеется-ли какое-либо отличие помимо написания, может 2) меньше нагружает сервер?

C Уважением, Дмитрий.
Точно будет отличие в том, что 2й вариант в базы на других СУБД не вставишь, это чисто Мускульная фишка.
Кстати, в PHPMyAdmin можно выгрузить и в классическом варианте!
...
Рейтинг: 0 / 0
25.07.2013, 17:26:26
    #38344066
bizisoft
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
Спасибо.
Но из 13.2.5. INSERT Syntax понятно только то, что можно использовать оба варианта, а про различия ни гугу.
А как насчет производительности и самое главное нагрузка на сервер не подскажите.

С Уважением, Дмитрий.
...
Рейтинг: 0 / 0
25.07.2013, 19:12:44
    #38344245
Arhat109
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
bizisoft,

Страноо даже как-то. Насколько помню, точка с запятой - разделитель операторов языка, нет?

стало быть в первом варианте - столько операторов, сколько точек с запятой, а во втором - это ОДИН оператор и стало быть ОДНА операция, нет?

По аналогии чем плохо:

select * from table where id=1;
select * from table where id=2;
select * from table where id=3;
select * from table where id=4;

вместо

select * from table where id>=1 AND id<=4;

ась? :)
...
Рейтинг: 0 / 0
25.07.2013, 19:53:23
    #38344288
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
Arhat109а во втором - это ОДИН оператор и стало быть ОДНА операция, нет?В данном конкретном случае - два.
...
Рейтинг: 0 / 0
25.07.2013, 19:55:28
    #38344290
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
по сабжу:
http://dev.mysql.com/doc/refman/5.5/en/insert-speed.html You can use the following methods to speed up inserts:

If you are inserting many rows from the same client at the same time, use INSERT statements with multiple VALUES lists to insert several rows at a time. This is considerably faster (many times faster in some cases) than using separate single-row INSERT statements.
...
Рейтинг: 0 / 0
25.07.2013, 23:16:20
    #38344454
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
MegabyteТочно будет отличие в том, что 2й вариант в базы на других СУБД не вставишь, это чисто Мускульная фишка.


Поискать можно, но кажется я на VB так же делал с ADO, как мускуль предлагает.
...
Рейтинг: 0 / 0
26.07.2013, 15:44:32
    #38345445
Megabyte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
debloggerMegabyteТочно будет отличие в том, что 2й вариант в базы на других СУБД не вставишь, это чисто Мускульная фишка.


Поискать можно, но кажется я на VB так же делал с ADO, как мускуль предлагает.
VB, ADO - это клиент. Я про то, что если запустить этот скрипт напрямую на сервере любой другой СУБД, то скорее всего ругнется.
...
Рейтинг: 0 / 0
26.07.2013, 17:09:25
    #38345694
bizisoft
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
Спасибо большое всем.

Я все понял, особенно из http://dev.mysql.com/doc/refman/5.5/en/insert-speed.html
Сделаю вставку через 2) и сравню результат.
Также буду "пилить" LOAD DATA INFILE, как раз поддержка хостинга ответила, что у них нет ограничения по использованию LOAD DATA INFILE (встречал и такое), так что флаг мне в руки.

С Уважением, Дмитрий.
...
Рейтинг: 0 / 0
26.07.2013, 17:33:24
    #38345736
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
Megabyte,

Типа ADO в своем нутре коварно поменяла прогрессивный массив на чересстрочный? А я как лопух сижу и думаю - крутяк! Но откуда тогда уверенность что engine так не делает? То есть он так и делает, а другой engine так не делает и поэтому типа прогрессивный запрос упрется.

По-моему это химеры. Майскуль в подавляющем числе случаев связан с пхп, да еще с таким, от которого не отвязаться, так что практического смысла предусматривать столкновение земли с небесной осью не вижу.
...
Рейтинг: 0 / 0
29.07.2013, 13:07:52
    #38347284
Megabyte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем отличие различных записей insert
debloggerMegabyte,

Типа ADO в своем нутре коварно поменяла прогрессивный массив на чересстрочный? А я как лопух сижу и думаю - крутяк! Но откуда тогда уверенность что engine так не делает? То есть он так и делает, а другой engine так не делает и поэтому типа прогрессивный запрос упрется.

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

Попробуйте эту хрень запустить напрямую на другой СУБД:
Код: sql
1.
insert (перечень полей) value (перечень данных1), (перечень данных 2),  (перечень данных 3), (перечень данных 4), (перечень данных 5);


Вот буквально сейчас проверил в MSSQL. Естественно не работает.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / В чем отличие различных записей insert / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]