2010-11-01 129 views
4

我有5個文本框包含5個特定人的聯繫號碼。我想將這5個聯繫號碼插入tblContact(person_id|contact_no)。我可以在一個sql語句中插入這5個聯繫人嗎?或者我必須調用一個循環來插入5個記錄?如何在單個插入語句中插入多行?

回答

4
INSERT INTO `tblContact` (`person_id`, `contact_no`) VALUES 
('PERSON_ID_VALUE_1', 'CONTACT_NO_VALUE_1'), 
('PERSON_ID_VALUE_2', 'CONTACT_NO_VALUE_2'), 
('PERSON_ID_VALUE_3', 'CONTACT_NO_VALUE_3'), 
('PERSON_ID_VALUE_4', 'CONTACT_NO_VALUE_4'), 
('PERSON_ID_VALUE_5', 'CONTACT_NO_VALUE_5'); 
4

許多數據庫都具有多行插入功能,MySQL就是其中之一。您可以使用(在5.0以上,不知道早期版本雖然簡單的介紹一下在3.23/4.0/4.1的文檔似乎表明是)這樣的:

insert into tblContact (person_id,contact_no) values 
    (1, '555-5555'), 
    (2, '555-1234'); 

更多細節here

旁白:在genneral,如果你的數據庫沒有支持多行插入,你可能只需要使用組獨立INSERT語句周圍的事務。我們發現多行插入實際上給了我們相當大的速度提升(無論如何,我們的DBMS - YMMV)。

1

您可以在1個插入語句中插入5條記錄。

像:插入tblContact(爲person_id,contact_no)值(1, '145566'),(2, '233366'),(3, '564666')