mysql 导入表_如何向mysql导入数据
1.mysql命令导入数据
基本语法:mysql -h服务器地址 -u用户名 -p 数据库名< 要导入的数据库文件路径
例:导入G:/mydb.sql
2.source命令导入数据
基本语法:source 数据库
一、导入.sql文件 1.mysql命令导入数据 基本语法:mysql -h服务器地址 -u用户名 -p 数据库名< 要导入的数据库文件路径 例:导入G:/mydb.sql 2.source命令导入数据 基本语法:source 数据库文件路径; 例:导入G:/mydb2.sql 二、导入.csv/.txt文件 1.load data 导入数据 基本语法: 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 n lines] [(col_name, )] low_priority:load data语句的执行被推迟到没有其他客户读取表之后。 local:从客户主机上按路径读取文件。若省略,则文件在服务器上按路径读取文件。 replace|ignore:控制对现有的唯一键记录的重复的处理。若指定replace,删除原有行,插入新行。若指定ignore,则保留原有行,跳过相同值的新行。若不指定,则找到重复键值时,出现一个错误,且文本文件的余下部分将被忽略。 fields terminated by:指定字段间的分隔符,默认'\t'。 lines terminated by:指定每行结尾的字符,默认'\n'。 如果fields和lines两个同时被指定,fields必须在lines之前。 fields [optionally] enclosed by:指定字段包围字符,若省略optionally,则所有的字段由enclosed by字符包围,反之mssql数据库导入,则enclosed by字符仅被用于包围char和varchar字段。 fields escaped by:指定转义字符,默认'\' ignore n lines:忽视文件的前几行 (col_name, ):指定插入数据时表中列的顺序,若省略,则按默认顺序插入数据。 例:向user表插入文件'G:/用户表.txt'中数据。 用户表.txt中数据如下: 数据导入: 注:character set utf8/gbk这个字符集必须要写,若省略,可能会出现乱码或者只导入一部分数据。 2.mysqlimport导入数据 基本语法:mysqlimport -h服务器地址 -u 用户名 -p [--local] 数据库名 文件路径 [options] options常用选项: -d or --delete:导入数据前删除原数据表中的所有信息。 -f or --force:不管是否遇到错误,mysqlimport将强制继续插入数据 -i or --ignore:导入数据时跳过有相同唯一关键字的新行,保留原有行。 -r or -replace:用新行代替原数据表中有相同唯一关键字的记录。 -l or -lock-tables:导入数据前锁住原数据表。 --fields-terminated-by=name:设置字段间的分隔符,默认'\t' --fields-optionally-enclosed-by=name:设置字段包围字符 --fields-escaped-by=name:设置转义字符,默认'\' --lines-terminated-by=name:设置每行结尾的字符,默认'\n' --ignore-lines=n:忽视文件的前几行 mysqlimport命令无需指定表名,而是根据文件名作为表名,该数据表在导入数据时必须存在。 --local:是在本地计算机中查找文件时使用(指定--local后,文件可以放在任何地方进行导入,否则文件只能放在mysql的data目录下或者指定绝对路径)。 例:向user2表插入G:\user2.csv文件中数据。 user2.csv中数据如下: 数据导入: (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |