位置: 编程技术 - 正文

MySQL load语句详细介绍(mysql load local)

编辑:rootadmin

推荐整理分享MySQL load语句详细介绍(mysql load local),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql load null值,mysql load 指定字段,mysql load 命令,mysql中load,mysql load infile,mysql load 命令,mysql load ignore,mysql load ignore,内容如对您有帮助,希望把文章链接给更多的朋友!

load的语法

LOAD DATA INFILE语句用于高速地从一个文本文件中读取行,并装入一个表中。文件名称必须为一个文字字符串。

由character_set_database系统变量指示的字符集被用于解释文件中的信息。SET NAMES和character_set_client的设置不会影响对输入的解释。

典型的示例

如果您只想载入一个表的部分列,则应指定一个列清单:

文件的路径

如果指定了LOCAL,则被认为与连接的客户端有关:

1.如果指定了LOCAL,则文件会被客户主机上的客户端读取,并被发送到服务器。文件会被给予一个完整的路径名称,以指定确切的位置。如果给定的是一个相对的路径名称,则此名称会被理解为相对于启动客户端时所在的目录。

2.如果LOCAL没有被指定,则文件必须位于服务器主机上,并且被服务器直接读取。

当在服务器主机上为文件定位时,服务器使用以下规则:

1).如果给定了一个绝对的路径名称,则服务器使用此路径名称。2).如果给定了带有一个或多个引导组件的相对路径名称,则服务器会搜索相对于服务器数据目录的文件。3).如果给定了一个不带引导组件的文件名称,则服务器会在默认数据库的数据库目录中寻找文件。

注意,这些规则意味着名为./myfile.txt的文件会从服务器数据目录中被读取,而名为myfile.txt的同样的文件会从默认数据库的数据库目录中读取。

从客户端使用绝对路径load数据

从服务器里使用相对路径load数据

下面的LOAD DATA语句会从db1数据库目录中读取文件data.txt,因为db1是当前数据库。即使语句明确把文件载入到db2数据库中的表里,也会从db1目录中读取。

IGNORE number LINES选项

IGNORE number LINES选项可以被用于在文件的开始处忽略行。

您可以使用IGNORE 1 LINES来跳过一个包含列名称的起始标题行:

REPLACE和IGNORE

有些输入记录把原有的记录复制到唯一关键字值上。REPLACE和IGNORE关键字用于控制这些输入记录的操作。

如果您指定了REPLACE,则输入行会替换原有行(换句话说,与原有行一样,对一个主索引或唯一索引具有相同值的行)。

如果您指定IGNORE,则把原有行复制到唯一关键字值的输入行被跳过。

如果您这两个选项都不指定,则运行情况根据LOCAL关键词是否被指定而定。不使用LOCAL时,当出现重复关键字值时,会发生错误,并且剩下的文本文件被忽略。使用LOCAL时,默认的运行情况和IGNORE被指定时的情况相同;这是因为在运行中间,服务器没有办法中止文件的传输

索引的影响

如果您对一个空的MyISAM表使用LOAD DATA INFILE,则所有的非唯一索引会被创建在一个独立批中(对于REPAIR TABLE)。当您有许多索引时,这通常会使LOAD DATA INFILE大大加快。通常,LOAD DATA INFILE的速度会非常快,但是在某些极端情况下,您可以在把文件载入到表中之前使用ALTER TABLE...DISABLE KEYS关闭LOAD DATA INFILE,或者在载入文件之后使用ALTER TABLE...ENABLE KEYS再次创建索引,使创建索引的速度更快。

MySQL load语句详细介绍(mysql load local)

FIELDS和LINES的默认值

如果您不指定FIELDS子句,则默认值为假设您写下如下语句时的值:

如果您不指定LINES子句,则默认值为假设您写下如下语句时的值:

换句话说,当读取输入值时,默认值会使LOAD DATA INFILE按如下方式运行:

相反的,当编写输出值时,默认值会使SELECT...INTO OUTFILE按如下方式运行:

注意,要写入FIELDS ESCAPED BY ‘\',您必须为待读取的值指定两个反斜杠,作为一个单反斜杠使用。

备注:如果您已经在Windows系统中生成了文本文件,您可能必须使用LINES TERMINATED BY ‘rn'来正确地读取文件,因为Windows程序通常使用两个字符作为一个行终止符。部分程序,当编写文件时,可能会使用r作为行终止符。要读取这样的文件,应使用LINES TERMINATED BY ‘r'。

STARTING LINES选项

如果所有您希望读入的行都含有一个您希望忽略的共用前缀,则您可以使用'prefix_string'来跳过前缀(和前缀前的字符)。如果某行不包括前缀,则整个行被跳过。注释:prefix_string会出现在一行的中间。

以下面的test.txt为文件源

使用以下sql导入数据

最后并只得到数据("row",1)和("row",2)。

TERMINATED LINES选项

如果jokes被由%%组成的行分隔,要读取包含jokes的文件,您可以这么操作:

TERMINATED,ENCLOSED,ESCAPED FIELD选项

TERMINATED用于控制字段的分隔符,可以为多个字符。

ENCLOSED BY用于用于控制字段的引号,必须为单一字符,如果您忽略了词语OPTIONALLY,则所有的字段都被包含在ENCLOSED BY字符串中,如果您指定了OPTINALLY,则ENCLOSED BY字符只被用于包含具有字符串数据类型(比如CHAR, BINARY, TEXT或ENUM)的列中的值.

SELECT...INTO OUTFILE导出数据,ENCLOSED BY '"',忽略OPTIONALLY

SELECT...INTO OUTFILE导出数据,ENCLOSED BY '"',指定OPTIONALLY

ESCAPED BY用于转义,FIELDS ESCAPED BY值必须为单一字符。

如果FIELDS ESCAPED BY字符为空字符,则没有字符被转义,并且NULL被作为NULL输出,而不是N。去指定一个空的转义符不是一个好办法,特别是如果数据的字段值包含任何刚给定的清单中的字符时,更不能这么做。

如果在字段值内出现ENCLOSED BY字符,则通过使用ESCAPED BY字符作为前缀,对ENCLOSED BY字符进行转义。

MySQL远程访问设置终极方法 数据库对于服务端开发人员来说,几乎就是左膀右臂。几乎每一个服务端开发人员都要和数据库打交道。而MySQL又以其开源免费,小巧玲珑,简单易用,

mysql获取group by总记录行数的方法 本文实例讲述了mysql获取groupby总记录行数的方法,分享给大家供大家参考。具体方法分析如下:一般来说,mysql获取groupby内部可以获取到某字段的记录

mysql设置指定ip远程访问连接实例 本文实例讲述了mysql设置指定ip远程访问连接的方法,分享给大家供大家参考。具体实现方法如下:1.授权用户root使用密码gimoo从任意主机连接到mysql服务

标签: mysql load local

本文链接地址:https://www.jiuchutong.com/biancheng/321342.html 转载请保留说明!

上一篇:mysql insert语句操作实例讲解

下一篇:MySQL远程访问设置终极方法(mysql开启远程访问权限)

  • 核定征收需要缴税吗
  • 法人是残疾人有什么优惠政策
  • 年报里资产总额能随便填吗
  • 招待费汇算清缴扣除比例
  • 小规模纳税人和个体工商户的税收政策
  • 原始凭证丢失如何处理会罚款吗
  • 结转入库材料计划成本的会计分录例题
  • 受托加工怎么做账
  • 法人资本个人资本
  • 年底没计提年终奖,下一年发放要怎么做
  • 减免的教育费附加和地方教育费附加怎么做分录
  • 预缴工程税的帐务处理如何做?
  • 企业认缴出资怎么做账
  • 汽车进口税率表
  • 收购烟叶委托加工烟丝组成计税价格
  • 没有单价数量只有金额的发票可以用吗
  • 有留抵税额会计分录
  • 早教加盟需要
  • 捐赠允诺是否有法律约束力?
  • 公司购房、售房需要缴纳哪些税?
  • 取得赔偿款的发票可以抵扣吗
  • 红字记账的四种登记方式
  • 固定资产对外投资增值税
  • 开发票征收品目怎么填
  • 利息调整摊销额等于什么
  • win10 搜狗
  • 哪些固定资产不会随着时间的流逝贬值
  • 生产车间设备检测费计入什么科目
  • php模块
  • 公司招的兼职员工怎么报个税
  • mysqli php
  • 简述php操作mysql数据库的基本步骤
  • PHP aes (ecb)解密后乱码问题
  • 哈特谢普苏特女王享殿
  • php做登录界面连接数据库
  • 约克郡在哪
  • vue3中props
  • 黄金海岸冲浪者沙滩
  • 网站变成灰色什么时候恢复
  • 包装物应交消费税
  • PyTorch 深度学习实战 | DIEN 模拟兴趣演化的序列网络
  • php如何遍历二维数组
  • day03-CSS
  • 待抵扣进项税额的账务处理
  • 当月销售次月开票就按次月申报
  • phpcms二次开发教程
  • 盘盈盘亏的定义
  • 软件开发服务费税率
  • 公司找的第三方代缴社保
  • 商业地产会计账务怎么做
  • 固定资产报废电费怎么算
  • 应收账款是否算负债
  • 在建工程的人工费会计分录
  • 计提折旧对公司有什么好处
  • 应收帐款坏账处理
  • sql删除重复数据只保留一条日期最大的
  • sqlserver远程连接设置
  • WIN7系统的电脑里可以安装会声会影10吗?
  • Win7 64位旗舰版系统中实现照片的批量重命名
  • win8安装出现了一些问题
  • linux的收获
  • debian7安装教程
  • xp系统自动升级win7
  • win8开机进入开始界面
  • 十个linux命令
  • cocos2d
  • 批处理文件是脚本吗
  • iframe的高度自适应
  • express如何使用
  • python,字符串
  • [置顶]游戏名 TentacleLocker
  • jquery访问本地html
  • android 获取时区
  • 建筑企业异地预缴增值税计算
  • 湖州市2020年最低生活保障
  • 内蒙古国家税务总局电子税务局官网
  • 徐州房产过户手续流程
  • 北京市生育津贴发放标准
  • 国税局巡察整改方案
  • 江西鹰潭潭花酒60度
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设