MySQL学习记录(导入Excel表到数据库,并筛选条件输出)
附上:重置mysql账号密码方法
ubuntu系统下mysql重置密码和修改密码操作 - skh2015java的博客 - CSDN博客(改完重启,登录mysql要root/sudo权限)
Centos7重置Mysql 8.0.1 root 密码 - 网络蚂蚁 - 博客园
php7访问mysql8.0的配置
学习MySQL,我个人觉得最好的方法就是获得一个稍微大的数据库数据并通过这个数据库来学习基本操作和优化。所以我把平时学校发下来的个人信息xls/xlsx文件拿来用了。
在这里推荐一个学习的好地方(比W3C和菜鸟教程好)https://www.shiyanlou.com/courses/9 课程以LINUX为基础,其实比Windows爽多了,学得更多
像我这等穷人,可以筛选他免费的课程:https://www.shiyanlou.com/courses/?fee=free
学到上面挑战1部分后再看下面吧
首先是注意事项:

然后就安装工具
--图形化工具--》
SQLyog
社区版免费(当然功能没有专业/企业版全):
Downloads · webyog/sqlyog-community Wiki (GITHUB下载地址)
(为什么不去官网下载?因为被DNS污染)
安装语言可选中文
附上:
mysql8.0 caching_sha2_password加密方式和5.0之前的区别和解决方案 - 快乐的傻子爱编程 - CSDN博客
【MySQL基础】mysql8.0 Authentication plugin 'caching_sha2_password' cannot be loaded - 东陆之滇CSDN - CSDN博客
试着复制别的软件的caching_sha2_password.dll到目录,报了其他的错
既然不支持更安全的加密模式?那可能就不适合我这种追求新特性的人了。Bye~
Navicat(推荐)
官网下载:Navicat | 下载 Navicat Premium 14 天免费 Windows、macOS 和 Linux 的试用版
破解方法:Navicat Premium 12.1.16.0安装与激活 - 简书
建立数据库-右击数据库导入数据,选择excel文件
(了解一下这个软件的菜单栏: "窗口" "查询")
导入成功后我们稍微修正一下(设计表),然后就点上面的查询
注:以下以表名代替你建立的表的名字
SELECT * FROM `表名`;
查询单个表里的内容:
SELECT * FROM `283班` WHERE 性别= '女';
/*
* table表名(283班)要用反引号`包起来,字符串(女)用单或双引号' "
* column键(性别)不能加引号 * 总结: 库表反引,字符串正引,键不引
*/
查询多个表的内容
SELECT * FROM `表名1`, `表名2`, `表名2` WHERE 性别="女";
从3个表 选择查询(SELECT) 并筛选(WHERE) 性别为女的人的 所有信息(*)
然后发现报错:1052 大概是说WHERE子句条件不明确(因为我们没告诉系统要筛选哪一张表的性别)MySql: Column 'XXXX' in field list is ambiguous 错误 - 邓晓晖 - 博客园
所以我们先去掉WHERE子句试试,结果......我这个数据库是整个院系的信息,查询时导致内存爆了.... (当然内存占满对硬件应该是没有破坏力的)
算了,不能作死...
所以我们用UNION
/*当然可以给性别加上表名,如 WHERE 281班.性别='女' ,但我有十多张表,不如下面复制粘贴后修改班级名来得快*/ SELECT *
FROM `281班`
WHERE 性别='女' UNION SELECT *
FROM `282班`
WHERE 性别='女' UNION SELECT *
FROM `283班`
WHERE 性别='女' UNION SELECT *
FROM `284班`
WHERE 性别='女';
点开我看
报错:> 1222 - The used SELECT statements have a different number of columns > 时间: 0.002s
然后从这篇得到启发: sql语句之union与join的区别 - 扬空 - 博客园
看了一下我的数据库几个表,发现EXCEL导入时多了一些NULL的Column,这些字段数量(即列的数量)不一样多,导致UNION无法拼接查询结果,所以删了多余的NULL列,
【切记】 一定要保存后才能查询成功 Navicat并不是修改后查询就会保存的(有没有保存可以查看Navicat窗口菜单栏,里面有星号的表都是没有保存的。)未保存的表没有生效修改,查询只会查到之前的结果
最终查询成功!
返回了所有女生的信息... (我TM才发现Excel表里的性别排序被人动过,除了性别其他都是对的....发表的人一定是故意的....)
(数据库没有错,是导入的Excel文件本来就是假的....................)
关于Navicat的操作:
当然,要"注意运行当前语句"与"运行"的区别


MySQL学习记录(导入Excel表到数据库,并筛选条件输出)的更多相关文章
- C# winform 编程 向ACCESS数据库导入EXCEL表使用心得
public string MyConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ErLake.mdb&quo ...
- winfrom 导入Excel表到access数据库(来自小抽奖系统)
网上有很多这种方法,本人只是针对自己的系统来实现的 //导入excel表 private void ImportTSMenu_Click(object sender, EventArgs e) { O ...
- 向ACCESS数据库中的表导入EXCEL表,在 System.Data.OleDb.OleDbException 中第一次偶然出现的“System.Data.dll”类型的异常
向ACCESS数据库中的表导入EXCEL表,EXCEL表Sheet1中与ACCESS数据库表中的关键字对应的列的值,不能与数据库中表的主键项值重复,不然就会出现 在 System.Data.OleDb ...
- 利用kettle组件导入excel文件到数据库
利用kettle组件导入excel文件到数据库 1. 实现目标 把excel文件内容导入到目标表中:然后用java调用kettle的转换.excel文件的内容仅仅有两列,示比例如以下: wat ...
- 【转】 如何导入excel数据到数据库,并解决导入时间格式问题
在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...
- MySQL问题记录——导入导出权限设置
MySQL问题记录——导入导出权限设置 摘要:本文主要记录了在使用MySQL的过程中导入导出权限设置时遇到的问题以及解决方案. 相关日志 [Note] --secure-file-priv is se ...
- Mysql查询结果导出Excel表
Mysql查询结果导出Excel表: 一句转换方式:$ mysql -uops -p'GCNgH000KP' dtbs -e 'select * from t_proxy__record;' --de ...
- 向MySql数据库导入excel表数据
最近要开发一个小的答题系统,如果题目人工录入那确实很麻烦.所以想到是不是可以从用一些现有数据格式的文件导入数据.在网上查了一下,看到有关于将excel的数据导入到mysql的方法.所以将题库数据整理成 ...
- MYSQL 导入Excel数据到数据库中
1,先把excel的数据整理整齐,如每列都要保持同样的格式:就一列一列的数据: 2,导出excel的数据为CSV格式,即把excel的数据另存为xxxx.csv;: 3,用EditPlus工具将xxx ...
随机推荐
- 九、Spring之BeanFactory源码分析(一)
Spring之BeanFactory源码分析(一) 注意:该随笔内容完全引自https://blog.csdn.net/u014634338/article/details/82865644,写的 ...
- python在字节流中对int24的转换
python在字节流中对int24的转换 概述 最近在写项目的过程中,需要对从串口中读取的数据进行处理,本来用C写完了,但是却一直拿不到正确的数据包,可能是因为自己太菜了.后来用了python重新写了 ...
- tf.ConfigProto()
tf.ConfigProto一般用在创建session的时候用来对session进行参数配置 with tf.Session(config=tf.ConfigProto(...)...) tf.Con ...
- Autoware 培训笔记 No. 4——寻迹
1. 前言 好多初创公司公布出来的视频明显都是寻迹的效果,不是说寻迹不好,相反可以证明,寻迹是自动技术开始的第一步. 自动驾驶寻迹:一种能够自动按照给定的路线(通常是采用不同颜色或者其他信号标记来引导 ...
- Java多线程——ThreadLocal类的原理和使用
Java多线程——ThreadLocal类的原理和使用 摘要:本文主要学习了ThreadLocal类的原理和使用. 概述 是什么 ThreadLocal可以用来维护一个变量,提供了一个ThreadLo ...
- tkinter中的messagebox
from tkinter import * from tkinter import messagebox def myMsg(): messagebox.showinfo("My Messa ...
- 将多个sass文件合并到一个文件中
将多个sass文件合并到一个文件中 应用场景:制作angular npm包的时候,定义的一些全局样式,自定义主题色这类的情况下,多个scss文件会要合并成一个文件并写到dist文件里,发布到仓库中. ...
- SpringBoot+vue整合websocket
0.引言 这里我先说下,网上对于websocket的解释有一堆不懂自己查,我这就不做原理解释,只上代码. 1.SpringBoot引入websocket maven 依赖 <dependency ...
- 智能社javascript
http://www.chuanke.com/?mod=student&act=study&courseid=91706
- PHP基础(谈一谈Session&Cookie)
cookie和sessiond的主要区别 (1).保存位置稍有区别 cookie数据存放在客户的浏览器上,服务器端不用保存.session数据放在服务器上,本地内存也有一份. (2).安全性不同 co ...