• 数据库错误知识集2


    Oracle数据库中最常见的索引类型是b-tree索引,也就是B-树索引,以其同名的计算科学结构命名。


    union与union all的区别(摘):
    ①对重复结果的处理:union会去掉重复记录,union all不会;

    ②对排序的处理:union会排序,union all只是简单地将两个结果集合并;

    ③效率方面的区别:因为union 会做去重和排序处理,因此效率比union all慢很多;

    union 内部的每个 select 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 select 语句中的列的顺序必须相同。


    除法运算

    1. 前表求象集
    2. 后表求投影
    3. 若投影的集合都包含在某个象集里面,
    4. 得出最后结果
      参考示例:
      在这里插入图片描述

    mysql主(称master)从(称slave)复制的原理:
    (1).master将数据改变记录到二进制日志(binary log)中,也即是配置文件log-bin指定的文件(这些记录叫做二进制日志事件,binary log events)
    (2).slave将master的binary log events拷贝到它的中继日志(relay log)
    (3).slave重做中继日志中的事件,将改变反映它自己的数据(数据重演)


    自然连接

    1. 找出同名属性
    2. 进行等值连接(一种特殊的笛卡尔积)
    3. 同名属性合并

    事务日志用以保存数据库数据变动,包括增删改等操作。


    inner join时只会对非NULL的记录做join,并且2边都有的才会匹配。


    实体完整性规则:这条规则要求关系中元组在组成主键的属性上不能有空值.如果出现空值,那么主键值就起不了唯一标识元组的作用.


    实体-联系模型转换为关系模型时,一个m:n的联系可以转换为一个独立的关系模式,与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。


    数据库的特点是数据共享数据独立减少数据冗余避免数据不一致加强数据保护


    数据的查询优化策略
    避免全表扫描,采用分区的形式,找到指定区域来避免全表查询
    建立索引,是数据信息进行排序的数据结构,目的是提高查询效率。
    并行查询从操作系统和CPU上给予多线程多核的操作,也属于提高插叙效率的一种。

    查询数据库优化的几种方案(摘)
    查询优化的几个方案:

    1. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引

    2. 应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默 认值。

    3. 应尽量避免在 where 子句中使用!=或<>操作符, MySQL只有对以下操作符才使用索引:<,<=,=,>,>=,BETWEEN,IN,以及某些时候的LIKE。

    4. 应尽量避免在 where 子句中使用 or 来连接条件, 否则将导致引擎放弃使用索引而进行全表扫描, 可以 使用UNION合并查询: select id from t where num=10 union all select id from t where num=20

    5. **in 和 not in 也要慎用,**否则会导致全表扫描,对于连续的数值,能用 between 就不要用 in 了:Select id from t where num between 1 and 3


    SQL 语言具有两种使用方式:

    • 一种是在终端交互方式下使用,称为交互式SQL
    • 另一种是嵌入在高级语言的程序中使用,称为嵌入式SQL

    候选码定义:若关系中的某一属性组的值能唯一标识一个元组,而其子集不能,则成为该属性组为候选码。 主码定义:若一个关系有多个候选码,则选定其中一个为主码。 主属性定义:候选码的诸属性成为主属性。 非主属性定义:不包含在任何候选码中的属性称为非主属性。


    SQL合法标识符 第一个字必须是 字母 、下划线 、@和#开头


  • 相关阅读:
    Mysql触发器
    LeetCode---【链表的操作】
    diff算法-patch函数(三)
    【编码译码】基于matlab QC-LDPC码编码和译码【含Matlab译码 2194期】
    【附源码】计算机毕业设计SSM网络游戏论坛平台
    使用 Java api在MongoDB中获取最后插入的文档ID
    SVN更新提交卡顿问题的一种解决方案
    0033【Edabit ★☆☆☆☆☆】【字符串表达式计算器】Miserable Parody of a Calculator
    【0227】smgr设计机制之新建一个磁盘表文件
    拾光者,云南白药!
  • 原文地址:https://blog.csdn.net/qq_41026725/article/details/127981185