阅读量:178
在MySQL数据库中,可以使用LOAD DATA INFILE和SELECT ... INTO OUTFILE这两个命令分别进行数据的导入和导出。
数据导入的方法如下:
-
使用
LOAD DATA INFILE命令导入本地文件到MySQL数据库中。语法结构如下:LOAD DATA [LOCAL] INFILE 'file_name' INTO TABLE table_name FIELDS TERMINATED BY 'separator' ENCLOSED BY 'enclosed_character' LINES TERMINATED BY 'line_separator' IGNORE number_of_rows;其中:
LOCAL:指定文件是从本地读取还是从TCP/IP连接读取。如果省略,则默认为客户端。file_name:要导入的文件路径。table_name:要将数据插入到的目标表名。separator:指定字段之间的分隔符。enclosed_character:指定字段值所用的引号字符。line_separator:指定每行的结束符。ignore_number_of_rows:忽略文件中的前几行数据。
例如,将本地文件
data.csv导入到名为students的表中,字段之间用逗号分隔,字段值用双引号包围,每行数据以换行符结束,忽略前两行数据,可以使用以下命令:LOAD DATA LOCAL INFILE 'data.csv' INTO TABLE students FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 2 ROWS;
数据导出的方法如下:
-
使用
SELECT ... INTO OUTFILE命令将MySQL数据库中的数据导出到本地文件。语法结构如下:SELECT column1, column2, ... INTO OUTFILE 'file_path' FIELDS TERMINATED BY 'separator' ENCLOSED BY 'enclosed_character' LINES TERMINATED BY 'line_separator' [FROM table_name];其中:
column1, column2, ...:要导出的列名。file_path:导出文件的目标路径。separator:指定字段之间的分隔符。enclosed_character:指定字段值所用的引号字符。line_separator:指定每行的结束符。FROM table_name:指定要导出数据的表名。如果不指定,则默认为当前表。
例如,将名为
students的表中的所有数据导出到本地文件data.csv中,字段之间用逗号分隔,字段值用双引号包围,每行数据以换行符结束,可以使用以下命令:SELECT * INTO OUTFILE 'data.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';