MySql分页与自增

Mysql中的大部分sql语句与oracle中的大致相同,像增加数据(insert into),删除数据(delete),修改数据(update),唯一需要注意的是,删除数据, 在oracle中我们会用" * "表示全部,而在MySQL当中,则不需要如此,只需要  直接From哪张表即可   语法如:(delete from emp where empno=7788  删除员工,工号是7788的员工);

分页查询:

分页查询相比与oracle 要简单的多,oracle中,分页要先固化rownum,序列,再由序列去筛选出,需要的数据与记录数,这样会镶套几层的select语句;

而MySQL中只需要一段话即可 

关键字:LIMIT 只需在WHERE语句之后添加即可  如下例:

SELECT * FROM EMP WHERE empno=7788 LIMIT 3,2;   这就实现了分页查询,在LIMIT后的  "3,2"的意思其实就是,从第三条往后,数两条数据(记录),非常简单,与oracle相比实现分页时候,就不需要再运用书法,去实现分页(oracle12c之后也是支持这样去分页的);

分页的概念:

假分页/逻辑分页/内存分页:

一次性把数据全部查询出来,存放到内存当中,翻页的时候,只需要从内存中去截取指定的条数即可;

优缺点:缺点是:如果数据过多,可能造成内存溢出;优点是:简单,翻页速度比较块(因为是从内存中,直接获取的);

真分页/物理分页/数据库分页:

每次都从数据库中截取指定条数的数据进行实现分页;

优缺点:缺点是太复杂,分页比较慢,优点 是,不会造成内存溢出

分页的基本算法:(起始页的)(pageIndex-1)*pageSize

MySql分页与自增_第1张图片
资料例图1:

MySQL的自增:

说到MySQL的自增,就不得不说起来他的约束了,而一般的约束,基本与oracle的约束功能与约束方法,都是一样的,

1.非空约束:NOT NULL 不允许表的列为空值;

2.设置列的默认值:DEFAULT;


MySql分页与自增_第2张图片
设置列默认值 例图1:

上图中NOT NULL也进行了演示;

3.唯一约束:UNIQUE,在该表中,该列的内容必须为唯一;(与主键不同)


MySql分页与自增_第3张图片
设置唯一约束  例图2:

4.主键约束:PRIMARY KEY,非空并且唯一;(比如两个员工,名字相同,但是工号必须不同);


MySql分页与自增_第4张图片
设置主键约束 例图3:

主键设置自增:AUTO_INCREMENT,从1开始,步长为1;

下图为使用工具,增加自增约束;

MySql分页与自增_第5张图片
工具自增约束 例图4:

语法的使用,与其相同,只是将主键 PRIMARY KEY 后加入 AUTO_INCREMENT 语句即可;


MySql分页与自增_第6张图片
语法自增约束 例题5:


MySql分页与自增_第7张图片
表的基本概念图 例图2:

上图中的代理主键的意思就是指的,平常开发中,此列为什么为主键的意思,比如之前我有叙述过的,员工特别多的情况下,可能名字相同,但是工号,肯定是不能相同的;

你可能感兴趣的:(MySql分页与自增)