MySQL建表阶段是非常重要的一个环节,表结构的好坏、优劣直接影响着后续的管理维护,赶在明天上班前分享总结个人MySQL建表、MySQL查询优化积累的一些实用小技巧。
成都创新互联主要从事成都网站建设、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务蕉城,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
技巧一、数据表冗余记录添加时间与更新时间
我们用到的很多数据表大多情况下都会有表记录的“添加时间(add_time)”,我建议大家再新增一个记录“更新时间(update_time)”字段,在我的工作里需要为市场部、运营部等建立各种报表,而很多报表里的数据都是需要到大记录表里去查询的,如果直接查询大表的话,查询速度相当慢。那么,我们的解决办法就是建立各种数据快照,数据快照都是通过脚本定时跑的。假如,哪一天原始数据表出现了问题,那么快照数据也会有问题,这个时候我们的快照脚本就得重新跑一份修复好了的数据,这样有了update_time更新时间这个字段,我们就能很快定位记录更新的时间。
技巧二、不要抛弃insert
ignore
into与replace
into
大家肯定写过一些脚本循环将记录插入到数据表,例如使用PHP脚本。如果期间的一条SQL插入失败,那么后续的插入将终止,你可以在脚本里绕过这个插入错误,一个好的办法是使用ignore关键字来屏蔽插入错误。如果,你的数据表里已经存在有将要插入的相同记录,那么这个时候就会产生插入报错,使用
insert
ignore
into将绕开这个错误,继续下一条记录的插入。
如果你的表结构设计了唯一索引的话,那么使用replace
into来更新你的数据表记录再好不过了,尤其是你在写一个脚本的时候,你就不需要在脚本里先查询数据表是否存在该条记录,如果存在,则更新;如果不存在则插入。你可以直接使用replace
into,它会自动到数据表检测,如果在唯一索引字段存在该值,则会先删除该条记录,然后再插入新记录;如果唯一索引字段不存在该值,则直接插入数据表,简单且非常实用。
技巧三、给你的表建立唯一索引
很多情况下建立表唯一索引,能给我们省下很多麻烦事,想上面说的replace
into就必须是有唯一索引,当然,很多人喜欢用到的自增主键ID尽管也是唯一索引,我建议是能在其他经常出现在where条件屁股后面的字段,并且值是唯一的话可以加个索引甚至唯一索引,查询速度将会提高很多。
说在最后:当然,insert
ignore
into与replace
into大家要根据自己的需求来确定,不一定就适合你现在的需求;我只是提示大家还有这么些个实用的小知识大家可以灵活运用到项目里边。
select * from 表 where 这是必须的
year,month,dayofyear是mysql的函数,分别是取得年,月,和当前时间在本年是第几天的3个函数
date就是你保存时间的字段
等号后面的当然条件啦。
方法/步骤
1
打开Navicat
2
打开mysql数据库连接
3
点击【报表】菜单,然后点击【新建报表】
4
此时进入报表设计界面
5
点击【数据】标签页
6
点击【文件】菜单,选择【新建….】
7
选择【查询向导】,然后点击【确定】
8
选择要查询的表,然后点击【下一步】
9
选择要查询的字段,然后点击【下一步】
10
选择是否添加计算,然后点击【下一步】
11
选择是否添加共同字段值分组行,然后点击【下一步】
12
选择是否限制返回行数,然后点击【下一步】
选择是否设置排序,然后点击【下一步】
选择是否需要预览,然后点击【完成】
此时报表的数据定义已完成,点击【设计】标签页
此时进入报表布局设计
从右侧的字段列表中拖动字段到报表的不同位置
点击【预览】标签页,可以预览报表结果
回到【设计】标签页,在【文件】菜单中,选择【保存】
输入新报表名称,然后点击【保存】
在确认保存目录对话框中,点击【是】
此时新报表已建立完成
1、使用open函数读取文本,提取数据;使用MySQLdb连接数据库,存入数据到库;
2、从数据库提取数据,填入网页中的表格。做网页网站这些用的是JSP和PHP这样的语言,每种链接my sql数据库的方式都不同的。然后用查询语句提取数据库中的数据。
MySQL不能用于报表开发,开发报表需要的是数据可视化相关技术,只不过其中的取数环节会用到MySQL而已。
Navicat for MySQL是一款可视化操作Mysql数据库的软件,界面简单,方便使用。
1、使用Navicat for MySQL之前当然先下载该软件,可以通过百度搜索查找 Navicat for MySQL。请认准百度安全验证最好到官方网站,或者正规网站站下载;
2、下载完以后直接双击安装包,根据自己的的需要安装对应的组件以及指定对应的安装位置就可以了;
3、打开Navicat for MySQL主界面如下图所示:
4、点击主界面中的“链接”,会弹出一个添加链接的窗口;
"连接名”可以任意输入,这个会窗口显示,建议输入容易识别和有意义的名称;
“主机名或IP地址”必须输入有效MySql访问IP地址;
“端口”一般默认为3306,如果有自定义MySql访问端口,则输入对应的自定义端口即可;
“用户名”和“密码”则是对应访问MysSql数据库的帐号,注意如果连接的MySql是非本机服务,则使用“root”是无法链接成功,这是MySql的安全策略问题;
点击“确认”则可以成功创建一个数据连接,并且会在左窗口显示,也可以点击“连接测试”,测试一下是否可以成功链接;
5、点击左窗口链接,连接成功后,在左侧的导航窗口后会看到当前链接的所有的MySQL数据库,其中灰色的表示没有打开数据库,绿色的标识的就是已经被打开的数据库。
右键点击一个灰色的数据库,在右键菜单中包含打开、关闭、新建、删除和数据传输等操作;
在已经打开数据中的选中表,可以创建、删除、修改表,在右键菜单中包含建表、导入、导出、运行SQL文件等操作;
6、在主窗口点击“查询”,则可以对当前选中的数据库进行表查询、以及对查询的创建、修改、删除等;
7、在主窗口点击“视图”,则可以对当前选中的数据库进行添加、修改、删除、导出视图;
8、在主窗口点击“函数”,则可以对当前选中的数据库进行添加、修改、删除、运行函数;
9、在主窗口还有“事件”、“报表”、“备份”、“计划”、“模型”等菜单,这些都不怎么常用,不过基本也是创建、删除、修改等操作。