![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 84
awhip9
这个作者很懒,什么都没留下…
展开
-
数据库(第一范式,第二范式,第三范式)
范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。目前有迹可寻的共有8种范式,依次是:1NF,2NF,3NF,BCNF,4NF,5NF,DKNF,6NF。通常所用到的只是前三个范式,即:第一范式(1NF),第二范式(2NF)转载 2016-10-07 21:35:20 · 310 阅读 · 0 评论 -
MySql查询不区分大小写解决方案(两种)
当我们输入不管大小写都能查询到数据,例如:输入 aaa 或者aaA ,AAA都能查询同样的结果,说明查询条件对大小写不敏感。解决方案一:于是怀疑Mysql的问题。做个实验:直接使用客户端用sql查询数据库。 发现的确是大小不敏感 。通过查询资料发现需要设置collate(校对) 。 collate规则: *_bin: 表示的是binary case sensit转载 2017-06-12 16:10:28 · 2603 阅读 · 0 评论 -
MySQL数据库中 int 长度最大是多少?
int最大长度是11.如果在建表时不指定字段int类型的长度时,系统则默认生成长度为11的字段。11也是int类型的最大长度,其中第一位表示符号+或者-,后面十位表示数字。 如果指定了长度,该字段其实也是长度为11的字段,因为只要是int类型,系统都分配了长度11位。 所以,当我们在用mysql数据库建表时如果有字段为int类型则不用指定长度了。转载 2017-06-13 21:45:06 · 10549 阅读 · 0 评论 -
mysql索引总结----mysql 索引类型以及创建
关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTR转载 2017-09-12 17:37:33 · 170 阅读 · 0 评论 -
MySQL explain执行计划解读
本文我们主要介绍了MySQL性能分析以及explain的使用,包括:组合索引、慢查询分析、MYISAM和INNODB的锁定、MYSQL的事务配置项等,希望能够对您有所帮助。1.使用explain语句去查看分析结果 如explain select * from test1 where id=1;会出现:id selecttype table type possible_keys key转载 2017-12-19 14:10:56 · 230 阅读 · 0 评论 -
mysql里面如何用sql语句让字符串转换为数字
mysql里面如何用sql语句让字符串的‘123’转换为数字的123?方法一:SELECT CAST('123' AS SIGNED integer);方法二:SELECT CONVERT('123',SIGNED);方法三:SELECT '123'+0;同样,当需要将一列字符串转换为数字也可以使用此方法,或者需要用到字符串进行排序的时候可以使用到此方法:转载 2018-01-03 18:00:00 · 545 阅读 · 0 评论 -
正确设置与使用SQL Server的字符集(Collation,即排序规则)
目录目录正确认识SQL Server的字符集选择合适的SQL Server字符集错误使用SQL Server的字符集参考资料正确认识SQL Server的字符集SQL Server作为一个国际化产品,支持多语言环境。在SQL Server中,字符集被称为排序规则(即Collation)。排序规则不仅影响记录行的sort顺序,还转载 2018-01-23 14:40:32 · 1169 阅读 · 0 评论 -
Mysql 的引擎类型MyISAM、InnoDB介绍及变更
innoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。一、基本的差别为:1、MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。2、MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持以及外部键等高级数据库功能。3、InnoDB不支持FULLTEXT类型的索引。4、I...转载 2018-02-27 17:19:47 · 265 阅读 · 0 评论 -
修改MySQL的默认数据存储引擎
因为MySQL默认的是MyISAM数据引擎,不支持事务也不支持外键,所以需要用到Innodb引擎,于是决定将mysql的默认引擎设置为innodb。1 . 查看MySQL存储引擎是用的哪个?登录MySQL数据库,在mysql>提示符下搞入show engines;命令。+------------+---------+--------------------------------------...转载 2018-02-27 17:20:44 · 410 阅读 · 0 评论 -
mysql 严格模式 Strict Mode说明
1.开启与关闭Strict Mode方法找到mysql安装目录下的my.cnf(windows系统则是my.ini)文件在sql_mode中加入STRICT_TRANS_TABLES则表示开启严格模式,如没有加入则表示非严格模式,修改后重启mysql即可例如这就表示开启了严格模式: sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES2.Stric...转载 2018-02-08 16:17:04 · 277 阅读 · 0 评论 -
Mysql 查看连接数,状态 最大并发数(赞)
-- show variables like '%max_connections%'; 查看最大连接数set global max_connections=1000 重新设置mysql> show status like 'Threads%';+-------------------+-------+| Variable_name | Value |+----------------...转载 2018-02-08 17:32:08 · 673 阅读 · 0 评论 -
Javaweb开发中,mysql数据库字段默认不区分大小写问题
1.问题 (1)近在做一个网站的注册和登录,密码字段因为用MD5算法,大小写生成的密文是完全不一样的,存入数据库的是密文,没有发现这个问题 (2)用户名存入的取出时,发现这种问题。即:数据库存在Jerry而不存在jerry,但是这两个用户名都能被查询到: 1.解决方法 (1)在sql语句的要区分大小写字段名的前面(转载 2017-06-12 16:09:51 · 1121 阅读 · 0 评论 -
MySQL索引类型总结和使用技巧以及注意事项
索引是快速搜索的关键。MySQL索引的建立对于MySQL的高效运行是很重要的。下面介绍几种常见的MySQL索引类型在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:复制代码代码如下:CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NUL转载 2017-07-12 14:17:22 · 331 阅读 · 0 评论 -
order by 语句对null字段的默认排序
在使用order by语句进行查询结果排序时,不同的数据库对于被排序字段数据行为null的情况,处理方式有所不同,这里我们主要考虑Oracle和MySQL数据库。首先我们直接给出结论:leeyee 写道【Oracle 结论】 order by colum asc 时,null默认被放在最后order by colum desc 时,null默认被放在最前null转载 2017-05-16 16:20:58 · 523 阅读 · 0 评论 -
myCat schema.xml详解
schema.xml 是mycat重要的配置文件之一,管理者mycat的逻辑库、表、分片规则、DataNode以及DataSource。想要了解使用mycat就要弄清楚schema里面的标签含义,下面将介绍一下schema里面的详细内容。首先 mycat自带的schema.xml 如下所示: with any table whose sharding node is i转载 2016-11-15 17:55:25 · 892 阅读 · 0 评论 -
MySQL的统计总数count(*)与count(id)或count(字段)的之间的各自效率性能对比
mysql的count优化总体上有以下注意事项:1.任何情况下SELECT COUNT(*) FROM tablename是最优选择;2.尽量减少SELECT COUNT(*) FROM tablename WHERE COL = 'value’ 这种查询;3.杜绝SELECT COUNT(COL) FROM tablename的出现。 COUNT(*)和COUNT转载 2017-01-18 14:20:17 · 4155 阅读 · 1 评论 -
SQL SERVER 主键和外键中的 级联删除(ON DELETE CASCADE)和级联更新(ON UPDATE CASCADE)
建立学生表create table gh_student(stuno varchar(3) primary key,stuname varchar(4),stuclass varchar(3))插入数据insert into gh_student values('001','gh','101')insert into gh_student values('002',转载 2017-01-19 15:55:45 · 1434 阅读 · 0 评论 -
OLTP和OLAP有何区别?
当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果.OLTP:转载 2017-03-09 09:38:08 · 84 阅读 · 0 评论 -
SQL Server SQL性能优化之--通过拆分SQL提高执行效率,以及性能高低背后的原因
复杂SQL拆分优化 拆分SQL是性能优化一种非常有效的方法之一, 具体就是将复杂的SQL按照一定的逻辑逐步分解成简单的SQL,借助临时表,最后执行一个等价的逻辑,已达到高效执行的目的 一直想写一遍通过拆分SQL来优化的博文,最近刚好遇到一个实际案例,比较有代表性,现分享出来, 我们来通过一个案例来分析,为什么拆分语句可以提高SQL执行效率,更重要的是弄清转载 2017-03-28 18:47:37 · 3281 阅读 · 0 评论 -
mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by
在mysql 工具 搜索或者插入数据时报下面错误:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'database_tl.emp.id' which is not functionally dependent on co转载 2017-03-30 21:12:55 · 445 阅读 · 0 评论 -
sql执行顺序
SQL 不同于与其他编程语言的最明显特征是处理代码的顺序。在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。 每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中转载 2017-03-30 21:15:28 · 69 阅读 · 0 评论 -
mysql中int与tinyint的区别分析
Answer: MySQL int(1) tinyint(1)有什么区别?我指定了字段长度,类型还有意义吗?Reply:mysql 中int(1)和tinyint(1)中的1只是指定显示长度,并不表示存储长度,只有字段指定zerofill是有用如int(3),如果实际值是2,如果列指定了zerofill,查询结果就是002,左边用0来填充。tinyint转载 2017-04-13 15:11:48 · 525 阅读 · 0 评论 -
Mysql数据库int(1)和tinyint(1)的区别&&扩展阅读
今天看项目的数据库结构设计,发现一个奇怪的地方。`xxx_detail` `delflag` int(1) NOT NULL DEFAULT '0' COMMENT '删除标志',`xxx_category` `delflag` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标记',问题:int(1) 和转载 2017-04-13 15:12:48 · 953 阅读 · 0 评论 -
MYSQL 更新时间自动同步与创建时间默认值共存问题
本文作者:苏生米沿本文地址:http://blog.csdn.net/sushengmiyan/article/details/50326259在使用SQL的时候,希望在更新数据的时候自动填充更新时间,那么在MySQL中是如何实现的呢?如创建表users[sql] view plain copyCREATE TABLE转载 2017-04-19 15:54:22 · 822 阅读 · 0 评论 -
mysql函数GROUP_CONCAT()
mysql 中 GROUP_CONCAT()函数,主要用来处理一对多的查询结果,通常会结合GROUP BY一起使用。语法:1 GROUP_CONCAT([DISTINCT] expr [,expr ...]2 3 [ORDER BY {unsigned_integer | col_name | expr}4 5 [ASC | DE...转载 2018-02-20 21:03:55 · 785 阅读 · 0 评论