SQL: вставить несколько наборов значений в одном выражении? - PullRequest
4 голосов
/ 30 мая 2009

Можно ли вставить несколько наборов значений в таблицу SQLite одним оператором?

Я пытался:

INSERT INTO the_table VALUES (1,2,'hi'),(2,0,'foo');

с различными (), представляющими различные наборы вставок, но я получаю ошибку.

Ответы [ 3 ]

6 голосов
/ 30 мая 2009

В вашей таблице только три столбца? Если нет, вы можете попробовать задать имена столбцов, которые вы устанавливаете, следующим образом:

INSERT INTO the_table 
       (column1  ,column2  ,column3) 
VALUES (1        ,2        ,'hi'   )
      ,(2        ,0        ,'foo'  )

Это соглашение было введено в SQL Server 2008, известном как Конструктор табличных значений . См. Страницу MSN INSERT для ознакомления с общим синтаксисом. Кроме того, оператор INSERT может быть легко отформатирован для лучшей читаемости.

1 голос
/ 30 мая 2009

Вы можете сделать

INSERT INTO the_table 
SELECT 1,2,'hi'
UNION
SELECT 2,0,'foo';
0 голосов
/ 30 мая 2009

Я обнаружил, что синтаксис в MSDN, но после попытки я тоже не могу этого сделать, чем заметить, что внизу страницы написано, что на странице есть ошибка :), где ссылка http://msdn.microsoft.com/en-us/library/ms174335.aspx см. Внизу Как вставить несколько строк

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...