约束(constraint)
定义:在建表时,为某些列添加一些特定的规则,保证数据库的数据满足某种用户的要求。添加约束之后,在往表中(插入、更新)数据时,如果数据不满足约束,则该条语句不能执行
约束的分类
①非空约束 not null
②唯一约束 unique
③自定义检查约束 check
④主键约束 primary key
⑤外键约束 foreign key
如何添加约束
1)在建表的同时,可以为某一列添加约束
①在列后面直接追加约束
②在填写完所有列之后,添加约束
2)在建表之后,通过修改表结构来添加约束
三范式
第一范式
列不可分
第二范式
不能部分依赖
第三范式
不能存在传递依赖
索引
关键字: index
作用: 在查询列数据的时候,速度可以变快
create index idx_emp_ename_job on emp(ename,job)
select * from emp where ename = 'SMITH' and job= 'XXX';
只有添加索引的列,通过该列进行查询时,速度才可以变快
create table demo110(
id number(5) primary key,
name varchar2(20) not null,
nickname varchar2(30) unique
)
rownum 和 rowid
rownum
Top N
求薪水最高的5个员工信息
select t.*,rownum
from
(select e.* from emp e order by sal desc) t where rownum <= 5
分页查询
求薪水6-10名的员工信息(每页五条数据,第二页)
select tt.*
from (select t.*, rownum rn
from (select e.* from emp e order by sal desc) t
where rownum <= 10) tt
where rn > 5
rowid
select e.*,rowid from emp_temp e;
delete from emp_temp where ename;
数据去重
delete from emp_temp where empno not in(select min(empno) from emp_temp group by ename)
学习安装MySQL 和 Navicat