mysql 的load data infile

MySQL 的 LOAD DATA INFILE 命令可以通过加载本地或远程文件的方式,将数据快速地导入到数据库中,具有导入速度快、效率高等优点。

以下是使用 LOAD DATA INFILE 导入数据的步骤:

1. 准备数据文件

首先要准备好要导入的数据文件,该文件的格式必须与要导入到的表的字段格式完全相同。可以采用各种格式的文件,如 .csv、.txt、.xls 等,但必须确保文件与表字段格式匹配,并且文件编码与数据表中的编码一致。

例如,有如下的数据文件 "data.csv" :

ID,Name,Age,Gender
1,Tom,20,Male
2,Lily,18,Female
3,Jack,22,Male

2. 创建数据表

创建需要导入数据的表,表的字段必须与数据文件的格式完全匹配。
例如,创建如下表:

CREATE TABLE IF NOT EXISTS `student` (
  `ID` int(11) NOT NULL,
  `Name` varchar(50) NOT NULL,
  `Age` int(11) NOT NULL,
  `Gender` varchar(10) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

3. 使用 LOAD DATA INFILE 导入数据

使用 LOAD DATA INFILE 命令,将数据文件导入到数据表中:

LOAD DATA INFILE 'data.csv' 
INTO TABLE `student`
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS;

LOAD DATA INFILE 的语法说明如下:

  • LOAD DATA INFILE '文件名':指定要导入的数据文件名称。
  • INTO TABLE 表名:指定要导入数据的数据表名称。
  • FIELDS TERMINATED BY ',':指定数据文件字段之间的分隔符,例如逗号、制表符等。
  • ENCLOSED BY '"':指定数据文件中字符串字段的限定符。如果数据文件中包含“null”或“\N”,需要使用该选项将其识别为 NULL。
  • LINES TERMINATED BY '\r\n':指定每一行数据的分隔符。
  • IGNORE 1 ROWS:指定要忽略的行数,此处忽略数据文件的第一行标题行。

4. 示例说明

为了更好地说明 LOAD DATA INFILE 命令的用法,下面举例说明:

假设有如下数据文件 data.txt:

1,张三,20,男
2,李四,21,女
3,王五,22,男

现在想将该文件导入到如下的数据表 student 中:

CREATE TABLE IF NOT EXISTS `student` (
  `id` int(11) NOT NULL,
  `name` varchar(50) NOT NULL,
  `age` int(11) NOT NULL,
  `gender` varchar(10) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

使用以下命令将数据导入到 student 表中:

LOAD DATA INFILE '/usr/local/mysql-5.6.22/data/data.txt' INTO TABLE student FIELDS TERMINATED BY ',';

上面的命令将使用逗号作为字段分割符,并将指定的数据文件 /usr/local/mysql-5.6.22/data/data.txt 导入到 student 表中。

另外,如果数据文件不是在本地,而是在远程服务器上,可以在 LOAD DATA INFILE 命令中指定远程服务器地址。例如,假设数据文件存储在远程服务器的 /data/ 目录下,远程服务器的 IP 是 192.168.1.100,用户名和密码分别是 user 和 password,则可以使用以下命令将数据导入到本地 MySQL 数据库:

LOAD DATA INFILE '\\192.168.1.100\data\data.txt'
INTO TABLE student
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS
(username, password);

在以上命令中,使用的是双斜杠来表示远程服务器地址,同时指定了字段分割符和行分割符,并忽略了数据文件的第一行。

总体来说,LOAD DATA INFILE 命令是一个非常方便的工具,可以快速地将大量数据导入到 MySQL 数据库中。需要特别注意的是,数据文件的格式和数据表的格式必须完全一致,否则可能导致数据导入错误。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql 的load data infile - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 一道超经典的C++结构体的题目

    我来为您详细讲解C++结构体问题的攻略。 一道超经典的C++结构体的题目 题目描述 假设有一个Person结构体,需要包含姓名、年龄、身高这三个属性: struct Person { string name; int age; float height; }; 请编写一个程序,能够完成以下操作: 创建一个Person结构体的变量,用指定的姓名、年龄、身高对其…

    C 2023年5月24日
    00
  • C++ 中的Lambda表达式写法

    当我们需要在C++中写一些短的、临时的函数时,常常使用Lambda表达式。Lambda表达式可以看作是一个匿名函数,它可以在任意处声明和定义,并且不会产生额外的开销。本文将详细讲解如何在C++中使用Lambda表达式。 基本语法 Lambda表达式的语法如下: [capture clause] (parameters) -> return_type {…

    C 2023年5月22日
    00
  • C语言文字艺术之数据输入输出

    下面是“C语言文字艺术之数据输入输出”的完整攻略: 1. 数据输入输出的基本操作 在C语言中,我们可以使用printf函数将数据输出到屏幕上,使用scanf函数获取用户输入的数据。 #include <stdio.h> int main() { int num; printf("请输入一个整数:"); scanf("…

    C 2023年5月23日
    00
  • C语言实现停车管理系统

    C语言实现停车管理系统 简介 本文介绍如何使用C语言实现一个简单的停车管理系统。停车管理系统可以用来记录车位状态、车辆信息、收费等等相关内容。在本文中,我们将使用文件来存储数据,使用控制台界面进行输入和输出。 1. 设计数据结构 在停车管理系统中,最重要的数据结构是车辆信息。我们可以使用struct来定义一个车辆信息的数据结构: struct car_inf…

    C 2023年5月23日
    00
  • Java中类转json的基类实现

    下面我会详细讲解Java中类转json的基类实现的完整攻略。 1. 需求背景 在开发Web应用程序时,经常需要将Java对象转换为json格式,然后将json格式的数据作为Http响应的主体内容发送给客户端,或者将接收到的json格式的数据解析成Java对象进行后续的处理。因此,实现Java类与json格式之间的转换是非常必要的。 2. 实现步骤 Java中…

    C 2023年5月23日
    00
  • JS循环遍历JSON数据的方法

    以下是详细的讲解”JS循环遍历JSON数据的方法”的完整攻略: 1. 解析JSON数据 在JS中,可以通过JSON.parse将字符串转换为JSON对象,也可以直接将JSON数据引入JS文件中,得到一个JSON对象。解析成功后,我们即可对JSON数据进行操作。 1.1 解析字符串为JSON对象 const jsonData = ‘{"name&qu…

    C 2023年5月23日
    00
  • 荣耀畅玩8c怎么切换应用?荣耀畅玩8c切换应用程序方法

    荣耀畅玩8c怎么切换应用? 切换应用程序方法 荣耀畅玩8c采用的是EMUI 8.2系统,在该系统下,切换应用程序有以下几种方法: 方法一:使用应用切换键 荣耀畅玩8c的系统底部有一个虚拟的按键区域,其中最左边的按键为 应用切换键 。使用该按键切换应用程序的具体步骤如下: 点击 应用切换键 ,系统会显示最近打开的应用程序列表; 在列表中选择要切换的应用程序,点…

    C 2023年5月23日
    00
  • C语言小项目计时器的实现思路(倒计时+报警提示)

    C语言小项目计时器的实现思路(倒计时+报警提示) 思路概括 计时器的实现思路可以分为三个部分: 用户输入倒计时的时间,程序将其保存下来。 程序不断地循环检查当前时间与开始时间之间的差值是否大于等于用户设定的时间,当差值达到要求时,触发报警提示。 用户可以选择中途取消倒计时。 具体实现 1. 用户输入倒计时的时间 用户需输入倒计时的时间,可以通过scanf函数…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部