![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Множественная вставка [D7, Access]
Vladimir_First © (2008-04-05 23:45:00)Здравствуйте, порыскал по форуму, но не нашел.
Как выполнить вставку Insert для Microsoft Access сразу нескольких записей.
Синтаксис MySQL неподдерживается:
ADOCommand1.Text := INSERT INTO table1 ( Name) VALUES ('Вася'), ('Петя'), ('Вова');
ADOCommand1.Execute;
Хотелось бы выполнить вставку трех строк одной командой, а не тремя. Такое возможно?
DiamondShark (2008-04-09 15:01:00) [1]
> И есть у меня сомнение ,что запрос на объединение нескольких
> тысяч записей сработает еще хуже, чем покомандная вставка.
Если ты собрался тысячи записей передавать литералами в тексте запроса, то любой метод сработает хуже.
Sergey13 (2008-04-07 15:48:00) [2]> [4] Vladimir_First (06.04.08 00:35)
> И есть у меня сомнение ,что запрос на объединение нескольких
> тысяч записей сработает еще хуже
А откуда берутся эти тысячи записей? Извне или они уже есть в БД?
ANB (2008-04-07 15:41:00) [3]
> ну или хотя бы Microsoft SQL
тут есть. см. АП (1)
Johnmen (2008-04-06 00:36:00) [4]
> ты даже заметить разницу не сумеешь.
Подписываюсь.
Vladimir_First (2008-04-06 00:35:00) [5]Ну это просто банально! Конечно же речь идет не о трех записях!
И есть у меня сомнение ,что запрос на объединение нескольких тысяч записей сработает еще хуже, чем покомандная вставка.
Как я уже привел пример в MySQL массовая вставка производится одной командой Insert.
Есть ли такая возможность в синтаксисе Microsoft Access (ну или хотя бы Microsoft SQL)?
Anatoly Podgoretsky (2008-04-06 00:23:00) [6]> Vladimir_First (06.04.2008 0:01:02) [2]
Групповая вставка конечно быстрее, но какая разница для трех записей, ты даже заметить разницу не сумеешь.
Vladimir_First (2008-04-06 00:01:00) [7]
> А у тебя что религиозное, что ты не хочешь сделать три запроса.
:)
У меня предвзятое мнение, что одна команда на вставку от клиента серверу выполнится быстрее, чем по одной.
Скажите, что я ошибаюсь и, возможно, я поменяю свои религиозные убеждения.
Anatoly Podgoretsky (2008-04-05 23:53:00) [8]> Vladimir_First (05.04.2008 23:45:00) [0]
Примерно так
INSERT INTO table1 ( Name) SELECT FROM (SELECT ''Вася'' UNION SELECT 'Петя' UNION SELECT 'Вова')
Не на всех базах подобное работает.
А у тебя что религиозное, что ты не хочешь сделать три запроса.