导出数据是很常用的功能,但今天在操作时遇到了一点问题,记录下来,方便其他人查阅。  

1. 使用MySQL workbench 导出数据 

  在workbench里连接好数据库之后直接点击左侧的management中的Data Export会让你选择数据表,但是导出的时候会提示报错,workbench的版本和MySQL Server的版本不一致:mysqldump Version Mismatch。我在服务器上装的是mysql5.7,windows上装的workbench是8.0。而且这种导出数据的方式不能导出到Excel,只能是.sql文件。

                          

  解决办法并不是换一个版本重新安装,而是在这个workbench里操作。

  在左侧SCHEMA里可以看到当前数据库内的表格,展开后选中你想导出的表,右键Table Data Export Wizard,然后选择你想导出的列,点next。选择文件保存的路径,格式选择csv,行分隔符选择LF,之后便是一路next即可。

              

  之后用Excel打开文件发现是乱码,因为里面有中文,用记事本打开,选择另存为,编码选为ANSI。再次用Excel打开,这次显示正常,只不过所有列都混在第一列里。

                      

  接下来便是CSV文件转Excel文件。

  在Excel里选中第一列,点菜单栏里的数据,分列。先点下一步,然后选择分隔符号为tab键和分号,选择是否覆盖原数据,是。大功告成。

                  

                            

  确实很奇怪,同一个软件里的导出数据方式差别这么大。

2. 使用命令行导出

  首先连接数据库,使用下面的MySQL语句来执行:

  1 select CompanyName from tablename where address='' into outfile '/home/user01/1.xls';

  上面语句是从tablename中导出所有满足条件address为空的公司名,保存的路径是自己手动指定的,不用提前准备一个空的Excel表。

  但是执行的时候可能会报错:ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement。这说明安全设置里指定了输出路径。可以用下面的语句查看:

  1 show variables like '%secure%';

                      

  要么保存到这个路径下面,要么去MySQL的配置文件里修改,我就直接保存在这里吧。

  这样并不会自动存成xls文件,下载到windows后还需要转码,和上面一节的操作相同:先转码,再保存。就不多说了。

3. 将数据从Excel导入到MySql

  有了以上的操作,现在导入数据只要反过来就可以了,先将Excel另存为csv,再将csv的格式在记事本里改为utf-8,然后在Mysql Workbench里操作就可以。值得注意的是Excel的表结构要和MySql里的表结构一致,等到导入完毕再操作数据库。

            

 

使用MySQL workbench 和Excel表之间的数据互相导出的更多相关文章

  1. mysql 查两个表之间的数据差集

    需要查两个表之间的差集 首先,想到的是主键直接not in select mailbox_id from co_user where mailbox_id not in (select mailbox ...

  2. SQL数据库与excel表格之间的数据 导入 导出

  3. SQL Server 之 在数据库之间进行数据导入导出

    1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...

  4. 向MySql数据库导入excel表数据

    最近要开发一个小的答题系统,如果题目人工录入那确实很麻烦.所以想到是不是可以从用一些现有数据格式的文件导入数据.在网上查了一下,看到有关于将excel的数据导入到mysql的方法.所以将题库数据整理成 ...

  5. 【数据传输 2】批量导入的前奏:将Excel表中的数据转换为DataTable类型

    导读:我们知道,在数据库中,数据集DataSet是由多张DataTable表组成.所以,如果我们需要将数据从外部导入到数据库中,那么要做的很重要的一步是将这些数据转换为数据库可以接受的结构.今天在用S ...

  6. SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)

    1.插入检索出的数据 select * from dbo.Customers_1

  7. vlookup函数基本使用--如何将两个Excel表中的数据匹配;excel表中vlookup函数使用方法将一表引到另一表

    vlookup函数基本使用--如何将两个Excel表中的数据匹配:excel表中vlookup函数使用方法将一表引到另一表 一.将几个学生的籍贯匹配出来‘ 二.使用查找与引用函数 vlookup 三. ...

  8. Jmeter----读取excel表中的数据

    Jmeter 读取excel数据使用的方法是使用CSV Data Set Config参数化,之后使用BeanShell Sampler来读取excel表中的数据 第一步.查看所需的接口都要哪些字段和 ...

  9. 把数据库里面的stu表中的数据,导出到excel中

    # 2.写代码实现,把我的数据库里面的stu表中的数据,导出到excel中 #编号 名字 性别 # 需求分析:# 1.连接好数据库,写好SQL,查到数据 [[1,'name1','男'],[1,'na ...

随机推荐

  1. ASA failover

    Active-Standby 1.作用:提供设备冗余 2.物理概念:primary 和 secondary ,需要命令敲得,角色不会切换, 3.虚拟概念:active和standby ,需要选举,角色 ...

  2. 004-数据结构之ADT-栈与队列【数组方式实现】

    一.ADT 在介绍抽象数据类型的时候,先看看什么是数据类型,在Java中可能首先会想到像 int,double这样的词,这是Java中的基本数据类型,一个数据类型会涉及到两件事: ①.拥有特定特征的数 ...

  3. C#基础加强(5)之装箱与拆箱

    定义 装箱:将值类型赋值给 Object 类型变量时,就是装箱操作,即包装为 Object 对象. 因为值类型都是 ValueType 类型,而 ValueType 页继承了 Object(CLR 内 ...

  4. Nginx与PHP-FPM运行原理详解

    目录 1. 代理与反向代理 1. 正向代理:访问google.com 2. 反向代理:通过反向代理实现负载均衡 2. 初识Nginx与PHP-FPM 1. Nginx是什么 2. CGI与FastCG ...

  5. linux云计算面试知识汇总,文件共享--vsftpd秘籍

    随着天气的升温快要步入夏天,紧随着面试季来喽,想知道Linux运维面试时都会被问到哪些问题吗?特整理出这些资料给大家参考学习,据说知道全部答案的人,月薪能过万,还不快快码下,以备后用! 今天小编将继续 ...

  6. JAVA时间Date工具类

    package com.common.util; import java.text.DateFormat; import java.text.ParseException; import java.t ...

  7. tree状数据叶子节点与根节点等的递归转换

    做项目时经常遇到树状层级数据.从各个层级数据的转换查询等.场景如行业类别的多层级,行政区层级,检查项类别层级等等. 数据结构如  Id Name ParentId #region area树状节点的转 ...

  8. 2018-2019-20175205实验二面向对象程序设计《Java开发环境的熟悉》实验报告

    2018-2019-20175205实验二面向对象程序设计<Java开发环境的熟悉>实验报告 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>< ...

  9. MMIO和PIO

    1.概念 内存映射I/O(MMIO)[统一编址]和端口映射I/O(PMIO)[独立/单独编址]是两种互为补充的I/O方法,用于设备驱动程序和设备通信,即在CPU和外部设备之间. (1)在MMIO中,内 ...

  10. Haproxy + Keepalived +PXC 常见错误

    1. Apr 21 19:15:54 pxc1 systemd[1]: mysql@bootstrap.service: main process exited, code=exited, statu ...