Inserarea mai multe rânduri într-o singură interogare SQL?

Am mai multe set de date pentru a introduce dintr-o dată, spune-4 rânduri. Masa mea are trei coloane: "Persoană", " Id " și "Birou".

INSERT INTO MyTable VALUES ("John", 123, "Lloyds Office");
INSERT INTO MyTable VALUES ("Jane", 124, "Lloyds Office");
INSERT INTO MyTable VALUES ("Billy", 125, "London Office");
INSERT INTO MyTable VALUES ("Miranda", 126, "Bristol Office");

Pot introduce toate 4 rânduri într-o singură instrucțiune SQL?

Comentarii la întrebare (14)

În SQL Server 2008 poate insera rânduri multiple folosind o singură declarație SQL INSERT.

INSERT INTO MyTable ( Column1, Column2 ) VALUES
( Value1, Value2 ), ( Value1, Value2 )

Pentru trimitere la acest lucru au o privire la MOC Curs 2778A - Scrie Interogări SQL în SQL Server 2008.

De exemplu:

INSERT INTO MyTable
  ( Column1, Column2, Column3 )
VALUES
  ('John', 123, 'Lloyds Office'), 
  ('Jane', 124, 'Lloyds Office'), 
  ('Billy', 125, 'London Office'),
  ('Miranda', 126, 'Bristol Office');
Comentarii (13)

Dacă introduceți într-un singur tabel, puteți scrie o interogare de genul asta (poate doar în MySQL):

INSERT INTO table1 (First, Last)
VALUES
    ('Fred', 'Smith'),
    ('John', 'Smith'),
    ('Michael', 'Smith'),
    ('Robert', 'Smith');
Comentarii (10)

NOTĂ: Acest răspuns este pentru SQL Server 2005. Pentru SQL Server 2008 și mai târziu, acolo sunt mult mai bune metode de cum am vazut in alte răspunsuri.

Puteți utiliza a se INTRODUCE SELECTAȚI cu UNION ALL:

INSERT INTO MyTable  (FirstCol, SecondCol)
    SELECT  'First' ,1
    UNION ALL
SELECT  'Second' ,2
    UNION ALL
SELECT  'Third' ,3
...

Doar pentru seturi de date mici, deși, care ar trebui să fie bine pentru 4 înregistrări.

Comentarii (0)

INSERT declarații care folosesc VALORI sintaxa pot insera mai multe rânduri. Pentru a face acest lucru, include mai multe liste de valori de coloane, fiecare închis în paranteze și separate prin virgule.

Exemplu:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
Comentarii (5)