主键(不一定有)
关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键比如 :
学生表(学号,姓名,性别,班级)
其中每个学生的学号是唯一的,学号就是一个主键
作用:保证数据不重复
外键(不一定有)
如果公共关键字在一个关系中(表)是主关键字,那么这个公共关键字被称为另一个关系(表)的外键。
外键表示了两个表之间的关系,关联另一表的主键。
作用:保证数据的一致性,完整性。
如图所示:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
索引
如果把书当成一个数据库的表,那么书前的目录就是该表的索引。
索引也是数据库对象,通过指针的形式提高查询的速度(相当于数组下标)。
缺点:Oracle数据库需要维护索引,会带来系统开销。
Oracle索引技术:
-
(默认)B树索引: 列值重复率较低的情况下用(主键)
-
位图索引: 列值重复率高的情况下使用(性别)
分页
分页可以这样理解,一大堆数据,我们每页显示多少条数据,这样就叫分页
假分页:从数据库一次性取出所有数据。
真分页:取每页的数据条数。
删除
DELETE: 可以rollback(回退),产生redo日志,能退回具体的几分几秒的数据。
TUNCATE: 有外键的时候不能执行该命令,可以通过copy旧表然后新建一个表执行该命令,表截断,不能回退,无redo日志。