LOAD DATA INFILE ''INTO TABLE [FIELDS TERMINATE">

mysql怎么批量导入数据

来源:这里教程网 时间:2026-02-28 18:12:45 作者:

MySQL 批量导入数据

使用 LOAD DATA INFILE

LOAD DATA INFILE 语句是批量导入大量数据的最快方法之一。它读取一个文件并将数据直接加载到表中,绕过 MySQL 服务器的常规解析和验证过程。

语法:

<code class="sql">LOAD DATA INFILE '<file_path>'
INTO TABLE <table_name>
[FIELDS TERMINATED BY '<terminator>']
[LINES TERMINATED BY '<terminator>']
[IGNORE <number> LINES]</code>

参数:

<file_path></file_path>
:要加载的数据文件路径。
<table_name></table_name>
:要导入数据的目标表。
<terminator></terminator>
:分隔字段和行的字符(默认为制表符和换行符)。
<number></number>
:要跳过的行数(如果数据文件中有标题行)。

示例:

假设有一个名为

students
的表,有以下模式:

<code class="sql">CREATE TABLE students (
  id INT NOT NULL,
  name VARCHAR(255) NOT NULL,
  age INT NOT NULL
);</code>

并且有一个名为

students.csv
的数据文件,包含以下内容:

<code class="csv">1,John,20
2,Mary,21
3,Bob,22</code>

要将此数据批量导入到

students
表中,可以使用以下命令:

<code class="sql">LOAD DATA INFILE 'students.csv'
INTO TABLE students
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 LINES;</code>

其他方法

除了 LOAD DATA INFILE,还有其他方法可以批量导入数据:

使用 INSERT 语句:对于较小的数据集,可以使用多个 INSERT 语句手动将数据插入表中。 使用 MySQL Workbench:MySQL Workbench 是一个图形化工具,允许用户通过拖放操作导入数据。 使用第三方工具:例如,Data Import/Export Tool 和 MySQL Connector/Python 等第三方工具可以简化批量数据导入过程。

优化导入性能

优化数据文件:使用合适的字段分隔符和行终止符,并确保数据文件格式正确。 使用索引:在目标表上创建索引可以加快数据插入速度。 使用批量插入:一次插入多行数据比逐行插入更快。 禁用外键检查:在导入数据时暂时禁用外键完整性检查,然后在导入完成后重新启用。

相关推荐