数据库部分 Day56 2019-01-15

数据库部分

1. 关系型数据库的三范式

关系型数据库在设计表时要遵循的规范

  • 第一范式:数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。(保持数据的原子性)列的不可分割
  • 第二范式:要求数据库表中的每个行必须可以被唯一区分看。为实现区分通常要加上一个列,以存储各个实例的唯一标识。(主键)
  • 第三范式:要求一个数据库表中不包含已在其它表中已包含的非主键关键字信息。(使用外键关联)。在满足第二范式的基础上,在实体中不存在非主键属性传递函数依赖于主键属性。(表中字段[非主键]不存在对主键的传递依赖)。
  • 反三范式:

为了效率可以设置重复或者可以推倒出的字段。

2. 事务的四个基本特征 (ACID特性)

事务是并发控制的单位,是用户定义一个操作序列,这些操作要么都做,要么都不做,是一个不可分割的工作单位。

  • 原子性:表示事务内操作不可分割,要么都成功,要么都失败。
  • 一致性:要么都成功,要么都失败,失败了要对前面的操作进行回滚。
  • 隔离性:一个事务开始后,不能受其他事务干扰。
  • 持久性/持续性:表示事务开始了就不能终止。

3. MySQL数据库的默认最大连接数

为什么需要最大连接数,服务器上的数据库只能支持一定数目同时连接,这个时候我们设置最大连接数(最多同时服务多少连接)。在数据库安装时会有一个默认的最大连接数为100。

4. MySQL和Oracle的分页

  • MySQL使用关键字limit来分页,limit offset,size表示从多少索引去多少位。

    "select * from students order by id 
    limit "+pageSize*(pageNumber-1)+","+pageSize;
    
  • Oracle 一般三层嵌套查询

"select * from 
    (select * ,rownum rid from 
        (select * from students order by postime desc)
     where rid <= "+pageSize*pageNumber+") t 
where t>"+pageSize*(pageNumber-1);
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 今天上午老师带领我们学习了结构体的定义表达极其应用,感觉还是很好理解的,只要休息好格式和输入输出还是很容易上手做题...
    王子龙同学阅读 517评论 1赞 50
  • TiTi日更06 我是一个很容易迷茫也很容易焦虑的人,每当我看到身边总有一些黑马,在悄悄的变厉害的时候,这个时候我...
    橙TiTi阅读 500评论 7赞 9
  • 远山隐居彩云间,清溪欢歌水潺潺 层峦叠嶂缥缈处,秋霜尽染枫叶丹
    细雨蒙蒙A阅读 991评论 31赞 14

友情链接更多精彩内容