Конференция "Базы" » Множественная вставка [D7, Access]
 
  • Vladimir_First (05.04.08 23:45) [0]
    Здравствуйте, порыскал по форуму, но не нашел.
    Как выполнить вставку Insert для Microsoft Access сразу нескольких записей.
    Синтаксис MySQL неподдерживается:
    ADOCommand1.Text :=  INSERT INTO table1 ( Name) VALUES ('Вася'), ('Петя'), ('Вова');
    ADOCommand1.Execute;
    Хотелось бы выполнить вставку трех строк одной командой, а не тремя. Такое возможно?
  • Anatoly Podgoretsky © (05.04.08 23:53) [1]
    > Vladimir_First  (05.04.2008 23:45:00)  [0]

    Примерно так
    INSERT INTO table1 ( Name)  SELECT FROM (SELECT ''Вася'' UNION SELECT 'Петя' UNION SELECT 'Вова')

    Не на всех базах подобное работает.
    А у тебя что религиозное, что ты не хочешь сделать три запроса.
  • Vladimir_First (06.04.08 00:01) [2]

    > А у тебя что религиозное, что ты не хочешь сделать три запроса.

    :)

    У меня предвзятое мнение, что одна команда на вставку от клиента серверу выполнится быстрее, чем по одной.
    Скажите, что я ошибаюсь и, возможно, я поменяю свои религиозные убеждения.
  • Anatoly Podgoretsky © (06.04.08 00:23) [3]
    > Vladimir_First  (06.04.2008 0:01:02)  [2]

    Групповая вставка конечно быстрее, но какая разница для трех записей, ты даже заметить разницу не сумеешь.
  • Vladimir_First (06.04.08 00:35) [4]
    Ну это просто банально! Конечно же речь идет не о трех записях!
    И есть у меня сомнение ,что запрос на объединение нескольких тысяч записей сработает еще хуже, чем покомандная вставка.
    Как я уже привел пример в MySQL массовая вставка производится одной командой Insert.
    Есть ли такая возможность в синтаксисе Microsoft Access (ну или хотя бы Microsoft SQL)?
  • Johnmen © (06.04.08 00:36) [5]

    > ты даже заметить разницу не сумеешь.

    Подписываюсь.
  • ANB (07.04.08 15:41) [6]

    > ну или хотя бы Microsoft SQL

    тут есть. см. АП (1)
  • Sergey13 © (07.04.08 15:48) [7]
    > [4] Vladimir_First   (06.04.08 00:35)
    > И есть у меня сомнение ,что запрос на объединение нескольких
    > тысяч записей сработает еще хуже

    А откуда берутся эти тысячи записей? Извне или они уже есть в БД?
 
Конференция "Базы" » Множественная вставка [D7, Access]
Есть новые Нет новых   [134432   +20][b:0][p:0]