使用单个insert语句插入多个记录

nec*_*tar 6 mysql sql

MySQL如何通过执行单个insert语句来插入多个记录?

手头的问题涉及1到10条记录,具体取决于用户输入.

Bal*_*usC 11

只需用逗号分隔值即可.

INSERT INTO
    tablename (colname1, colname2, colname3)
VALUES 
    ('foo1', 'bar1', 'waa1'), 
    ('foo2', 'bar2', 'waa2'), 
    ('foo3', 'bar3', 'waa3')
Run Code Online (Sandbox Code Playgroud)

  • 只需使用与收集用户输入相同的编程语言动态生成sql?或者,您也可以使用"批量插入".然而,细节取决于所讨论的编程语言.如果它是例如Java,那么我会为此建议`PreparedStatement#addBatch()`.如果它是PHP,那么`implode()`可能会派上用场. (4认同)