一 数据库设计三大范式(用于逻辑设计) 1 第一大范式 数据库表中所有的字段都只具有单一属性 单一属性的列是由基本数据类型所构成 设计出来的表都是简单的二维表 2 第二大范式 要求表中只有一个业务主键,也就是说符合第二范式的表不能存在非主键列,只对部分主键的依赖关系 3 第三大范式 非主键列不能依赖 ...
分类:
数据库 时间:
2020-07-26 01:59:27
阅读次数:
95
对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置 ...
分类:
数据库 时间:
2020-07-24 15:56:59
阅读次数:
75
由于配置是运行过那么长时间,很稳定,基本上不考虑,所以本次主要是sql的优化,并且集中在业务的个人空间。下面是这次优化的数据库版本: 案例一:粉丝查询优化 粉丝查询有2条sql --查询所有粉丝SELECT user FROM osc_friends f INNER JOIN osc_users u ...
分类:
数据库 时间:
2020-07-23 23:07:42
阅读次数:
101
使用JDBC技术是一件繁琐的事情,为了使数据库更加高效,有一种简化jdbc技术的操作--DBUtils。DbUtils(org.apache.commons.dbutils.DbUtils)是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也 ...
分类:
其他好文 时间:
2020-07-23 16:12:52
阅读次数:
66
Django 的 Models 仅仅只是配置和使用比较简单,因为他是Django自带的ORM框架,也正是因为是Django原生的,所以兼容性远远不如SQLAlchemy 真正算得上全面的ORM框架必然是我们的SQLAlchemy ORM框架,它可以在任何使用SQL查询时使用 建表 # 导入官宣基础模 ...
分类:
数据库 时间:
2020-07-21 09:47:41
阅读次数:
91
一,MyBatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java ...
分类:
其他好文 时间:
2020-07-17 16:15:34
阅读次数:
49
sql查询语句优化 1、对查询进行优化,应尽量避免全表扫描 a、 where 及 order by 涉及的列上建立索引 b、 尽量避免在 where 子句中对字段进行 null 值判断,可以将null值设置默认值0等,如:将select id from t where num is null变为se ...
分类:
数据库 时间:
2020-07-16 12:10:58
阅读次数:
81
前言: MySQL数据库自己用了也有两三年了,基本上只是掌握增删改查的sql语句,从没有思考过MySQL的内部到底是怎么根据sql查询数据的,包括索引的原理,只知道加了索引查的就快,不知道为什么加上索引效率就会提升,包括索引的限制和优化也知之甚少,所以决定开一专题来学习与记录MySQL。 MySQL ...
分类:
数据库 时间:
2020-07-16 00:20:20
阅读次数:
89
地址:https://leetcode-cn.com/problems/consecutive-numbers/ ## 编写一个 SQL 查询,查找所有至少连续出现三次的数字。 示例: 编写一个 SQL 查询,查找所有至少连续出现三次的数字。 + + + | Id | Num | + + + | 1 ...
分类:
其他好文 时间:
2020-07-16 00:03:52
阅读次数:
59
以下是广泛使用的30个SQL查询语句优化方法: 1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 2、对查询进行优化,首先应考虑在 where 及 order by 涉及的列上建立索引,避免全表扫描。 3、应尽量避免在 where 子句中对字段进行 n ...
分类:
数据库 时间:
2020-07-11 11:17:01
阅读次数:
75