0

我有大约 400k 数据,也许更多(以 sql 格式)并将其插入 mysql 数据库。哪一个性能更好,在sql文件中写入sql命令插入数据:

  1. 对每个数据重复此命令,直到 400k

    插入表(col1,col2,coln)值(val1,val2,valn);

  2. 先写 INSERT 命令,然后在下一个 VALUE 语句中写入 400k 数据

    INSERT INTO table (col1, col2, coln) VALUES (val1, val2, valn), (val1, val2, valn), (val1, val2, valn), .....直到400k数据

  3. 像 no.2 一样重复此命令,但仅针对每 100 个数据

    INSERT INTO table (col1, col2, coln) VALUES (val1, val2, valn), (val1, val2, valn), (val1, val2, valn), ..... [直到 100 个数据]
    INSERT INTO table (col1 , col2, coln) VALUES (val1, val2, valn), (val1, val2, valn), (val1, val2, valn), ..... [直到下 100 个数据]

  4. 或者也许还有其他不错的选择?

4

1 回答 1

0

您可以使用第一个或第二个变体,第二个可能更快。如果您选择第二个变体和语句长度大于允许的最大数据包大小(MySQL 变量),则应用第三个变体 - 将 INSERT 语句拆分为一些小语句。

于 2012-08-09T07:35:52.797 回答