mysql中的load命令使用方法_Mysql

使用mysql 中的load 命令,讲txt 文件中的内容加载到数据库表中,例如,创建table,名称是user,一个字段username;当前有db.txt文件,内容是以空格分开的用户名,例如:xiaowang xiaoliu zhangsan

将该文件加载到数据表user中,使用命令即可:

复制代码 代码如下:

load data local infile "/home/beaver/db" into table user lines terminated by ' '; 

作者 Beaver's

LOAD DATA INFILE

这是我们要介绍的最后一个导入数据到MySQL数据库中的方法。这个命令与mysqlimport非常相似,但这个方法可以在mysql命令行中使用。也就是说您可以在所有使用API的程序中使用这个命令。使用这种方法,您就可以在应用程序中导入您想要导入的数据。使用这个命令之前,mysqld进程(服务)必须已经在运行。

启动mysql命令行:

bin/mysql –p

按提示输入密码,成功进入mysql命令行之后,输入下面的命令:
USE Meet_A_Geek;
LOAD DATA INFILE "/home/mark/data.sql" INTO TABLE Orders;

简单的讲,这样将会把文件data.sql中的内容导入到表Orders中,如mysqlimport工具一样,这个命令也有一些可以选择的参数。比如您需要把自己的电脑上的数据导入到远程的数据库服务器中,您可以使用下面的命令:
LOAD DATA LOCAL INFILE "C:\MyDocs\SQL.txt" INTO TABLE Orders;

上面的LOCAL参数表示文件是本地的文件,服务器是您所登陆的服务器。这样就省去了使用ftp来上传文件到服务器,MySQL替你完成了. 您也可以设置插入语句的优先级,如果您要把它标记为低优先级(LOW_PRIORITY),那么MySQL将会等到没有其他人读这个表的时候,才把插入数据。可以使用如下的命令:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" INTO TABLE Orders;

您也可以指定是否在插入数据的时候,取代或者忽略文件与数据表中重复的键值。替代重复的键值的语法:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" REPLACE INTO TABLE Orders;
上面的句子看起来有点笨拙,但却把关键字放在了让您的剖析器可以理解的地方。

下面的一对选项描述了文件的记录格式,这些选项也是在mysqlimport工具中可以用的。他们在这里看起来有点不同。首先,要用到FIELDS关键字,如果用到这个关键字,MySQL剖析器希望看到至少有下面的一个选项:
TERMINATED BY character
ENCLOSED BY character
ESCAPED BY character

这些关键字与它们的参数跟mysqlimport中的用法是一样的. The TERMINATED BY 描述字段的分隔符,默认情况下是tab字符(\t)
ENCLOSED BY描述的是字段的括起字符。比方以引号括起每一个字段。
ESCAPED BY 描述的转义字符。默认的是反些杠(backslash:\ ).

下面仍然使用前面的mysqlimport命令的例子,用LOAD DATA INFILE语句把同样的文件导入到数据库中:
LOAD DATA INFILE "/home/mark/Orders.txt" REPLACE INTO TABLE Orders FIELDS TERMINATED BY ',' ENCLOSED BY '"';

LOAD DATA INFILE语句中有一个mysqlimport工具中没有特点:

LOAD DATA INFILE 可以按指定的列把文件导入到数据库中。当我们要把数据的一部分内容导入的时候,这个特点就很重要。比方说,我们要从Access数据库升级到MySQL数据库的时候,需要加入一些栏目(列/字段/field)到MySQL数据库中,以适应一些额外的需要。

这个时候,我们的Access数据库中的数据仍然是可用的,但是因为这些数据的栏目(field)与MySQL中的不再匹配,因此而无法再使用mysqlimport工具。尽管如此,我们仍然可以使用LOAD DATA INFILE,下面的例子显示了如何向指定的栏目(field)中导入数据:
LOAD DATA INFILE "/home/Order.txt" INTO TABLE Orders(Order_Number, Order_Date, Customer_ID);

如您所见,我们可以指定需要的栏目(fields)。这些指定的字段依然是以括号括起,由逗号分隔的,如果您遗漏了其中任何一个,MySQL将会提醒您^_^

时间: 2025-01-01 13:15:01

mysql中的load命令使用方法_Mysql的相关文章

浅谈MySQL中group_concat()函数的排序方法_Mysql

group_concat()函数的参数是可以直接使用order by排序的.666.. 下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要从高到底排序. 可以这样写: SELECT username,GROUP_CONCAT(score ORDER BY score DESC) AS myScore FROM t1 GROUP BY username; 效果如下:

Android中执行java命令的方法及java代码执行并解析shell命令_Android

android中执行java命令的方法大家都晓得吗,下面一段内容给大家带来了具体解析. android的程序基于java开发,当我们接上调试器,执行adb shell,就可以执行linux命令,但是却并不能执行java命令. 那么在android的shell中是否就不能执行java程序了呢. 答案是否定的.我们可以通过app_process来执行java程序. 写一个hello world吧,就是刚开始学java的时候 写得那个hello world,这次要在android上运行. 用记事本新建

Android中执行java命令的方法及java代码执行并解析shell命令

android中执行java命令的方法大家都晓得吗,下面一段内容给大家带来了具体解析. android的程序基于java开发,当我们接上调试器,执行adb shell,就可以执行linux命令,但是却并不能执行java命令. 那么在android的shell中是否就不能执行java程序了呢. 答案是否定的.我们可以通过app_process来执行java程序. 写一个hello world吧,就是刚开始学java的时候 写得那个hello world,这次要在android上运行. 用记事本新建

MySQL中的mysqldump命令使用详解

mysql|详解 MySQL有很多可以导入数据的方法,然而这些只是数据传输中的一半,另外的一般是从MySQL数据库中导出数据.有许多的原因我们需要导出数据.一个重要的原因是用于备份数据库.数据的造价常常是昂贵的,需要谨慎处理它们.经常地备份可以帮助防止宝贵数据地丢失:另外一个原因是,也许您希望导出数据来共享. 在这个信息技术不断成长的世界中,共享数据变得越来越常见. 比方说Macmillan USA维护护着一个将要出版的书籍的大型数据库.这个数据库在许多书店之间共享,这样他们就知道哪些书将会很快

合理使用mysql中的load data infile导入数据

基本语法: load data  [low_priority] [local] infile 'file_name txt' [replace | ignore] into table tbl_name [fields [terminated by't'] [OPTIONALLY] enclosed by ''] [escaped by'' ]] [lines terminated by'n'] [ignore number lines] [(col_name,   )]   load data

MySQL删除数据库的两种方法_Mysql

本文为大家分享了两种MySQL删除数据库的方法,供大家参考,具体内容如下 第一种方法:使用 mysqladmin 删除数据库使用普通用户登陆mysql服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库. 所以我们这边使用root用户登录,root用户拥有最高权限,可以使用 mysql mysqladmin 命令来创建数据库. 在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失. 以下实例删除数据库TUTORIALS(该数据库在前一章节已创建): [root@h

Mysql权限管理grant命令使笔记_Mysql

MySQL 赋予用户权限命令的简单格式可概括为: 复制代码 代码如下: grant 权限 on 数据库对象 to 用户  [identified by '密码'] 最常用的,弄主从同步的时候,给从库的slave用户设置拥有所有权限,权限all仅允许其从192.168.0.2登录,并限定使用密码 funsion  (密码要用 单/双引号 括起来) 复制代码 代码如下: grant all on *.* to slave@192.168.0.2 identified by 'funsion'; 执行

mysql5.5与mysq 5.6中禁用innodb引擎的方法_Mysql

今天发现有一个备份的mysql数据文件夹异常变大,一查发现是多了三个文件:ibdata1 ib_logfile0 ib_logfile1,前者18m,后两个各5m,原来是迁移的时候从mysql5.0迁移到了5.5,而5.5关闭innodb启动不起来,于是我就开启了innodb,由于innodb会默认增加这几个数据文件和日志文件,导致变大.尝试设置数据文件的大小,结果告诉我最小10m,还是太大,于是探索关闭innodb的方法. 看日志发现说由于mysql程序升级了,需要运行mysql_upgrad

详解MySQL中的外键约束问题_Mysql

使用MySQL开发过数据库驱动的小型web应用程序的人都知道,对关系数据库的表进行创建.检索.更新和删除等操作都是些比较简单的过程.理论上,只要掌握了最常见的SQL语句的用法,并熟悉您选择使用的服务器端脚本语言,就足以应付对MySQL表所需的各种操作了,尤其是当您使用了快速MyISAM数据库引擎的时候.但是,即使在最简单的情况下,事情也要比我们想象的要复杂得多.下面我们用一个典型的例子进行说明.假设您正在运行一个博客网站,您几乎天天更新,并且该站点允许访问者评论您的帖子. MySQL外键约束条件