How to insert multiple rows in single insert statement?

前端 未结 3 1558
执念已碎
执念已碎 2020-12-11 21:09

I have 5 text box contaning 5 contact no of a particular person. I want to insert those 5 contact no in tblContact(person_id|contact_no). Can I insert these 5

相关标签:
3条回答
  • 2020-12-11 21:26
    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');
    
    0 讨论(0)
  • 2020-12-11 21:29

    Many databases have a multi-row insert capability and MySQL is one of them. You can use (in 5.0+, not sure about earlier versions although a brief look at the 3.23/4.0/4.1 docs seems to indicate yes) something like:

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

    More details here.

    Aside: In genneral, if your database didn't support multi-row insert, you'd probably just use a transaction around the group of individual insert statements. We've found that multi-row inserts actually give us a pretty hefty speed increase (on our DBMS anyway - YMMV).

    0 讨论(0)
  • 2020-12-11 21:46

    you can insert your 5 records in 1 insert statements.

    like: insert into tblContact(person_id, contact_no) values(1,'145566'),(2,'233366'),(3,'564666')

    0 讨论(0)
提交回复
热议问题