2012-05-03 188 views
1

我有100行數據要插入到MySQL數據庫表中。
但我不想寫所有100 INSERT陳述。
在SQL中是否有任何批量插入語句? 請儘可能地幫助代碼。批量插入SQL語句

回答

2
INSERT INTO tbl (col1, col2) VALUES ('val1', 'val2'), ('val3', 'val4'), ... 

並請閱讀documentation第一下一次

+0

對不起,實際上我刪除它。我只是將查詢修改爲代碼部分。 –

+0

@Sai Kalyan Akshinthala:啊,明白了。我們在同一時間做了2次編輯,而你的第一次,對不起 – zerkms

2

由於MySQL manual狀態:使用VALUES語法可以插入多行

INSERT語句。爲此,請包含多個列值列表,每個列表值都包含在括號內,並用逗號分隔。例如:

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

此外,從部分上speed of INSERT

如果從同一客戶端同時插入多行,使用INSERT語句與多個VALUES列表中插入數一次一排。這比使用單獨的單行INSERT陳述快得多(在某些情況下快很多倍)。如果要將數據添加到非空表中,則可以調整bulk_insert_buffer_size變量以使數據插入更快。見Section 5.1.3, 「Server System Variables」