数据库理论知识
1、oracle游标:
oracle中游标分为隐式和显式两种游标
隐式游标:在对数据库进行增删改查的时候,plsql自动定义的
显示游标:需要自己定义,步骤分为:定义游标,开启游标,使用游标,关闭游标
2、数据库分页
oracle中是使用rownum来进行分页,mysql使用limit进行分页的
oracle分页的代码为:select *from (select rownum r,a from teb where rownum<=20)
mysql分页的代码为:select * from teb limit 0 , 5;
3、oracle中where条件查询和排序
oracle中使用索引的条件和严格,只有满足一定条件才可以使用
1.不能有空值
2.order by中的列索引的顺序和排序必须一致
4、笔记truncate和delete命令
delete删除不能腾出表空间
truncate不能对视图等操作
5、游标的好处和缺点
好处:
1、增强了数据的灵活性
2、加快了执行速度
3、保证了数据的安全
缺点:
1、占用服务器端资源,对服务器造成很大的压力
2、可读性和可维护性较差
6、创建索引的优点和缺点
索引有四种类型:标准索引,唯一索引,组合索引,反向键索引
好处:
创建唯一索引,保证每一行数据的唯一性
加快了检索速度
加速表与表的连接
缺点:
索引只能在表上创建,不能在视图上创建
索引会占用一定的物理空间
建议:
在表的数据较多的时候创建,帮助检索
7、怎样创建一个视图,视图的好处
创建视图:create view 视图名 as select 列名 from 表
好处:
视图不占用系统空间
简化操作
8、主键有几种
整数型,字符型,复合型
9、rowid和rownum的区别
rowid和rownum都是伪列
rowid是物理地址,用户数据中具体的物理存储位置
rownum是语句输出的结果排序
10、oracle中游标、函数的区别
oracle中游标类似指针,游标可以执行多个不相关的操作
函数可以理解为函数是存储过程的一种,函数没有参数,但一定有一个返回值
11、SQL结构化查询语言有哪些
DML:数据操作语言:增删改查
DDL:数据定义语言:create、drop
DCL:数据控制语言
12、数据库中的函数
字符函数:upper、lower、concat、length
数值函数:round、mod
日期函数:months_between、add_months、next_day、last_day
转换函数:to_char、to_number、to_date
通用函数:NVL、NULLIF
13、分组函数有哪些
avg、min、max、sum
14、多表查询有哪些
笛卡儿积、等值连接、自连接、左外连接、右外连接
左外连接:使用时,主表的数据可以全部查询出来,附表(右表)的数据,符合会显示,不符合会显示null
右外连接:使用和左外连接相反,也可以这样理解,主表的数据会全部显示出来,附表的数据符合主表的才可以查询出来,这里的符合指id,name,age所有的字段属性
15、子查询中空值和多值怎么处理
子查询中,如果查询的是空值,则主查询也不会返回结果
单行查询中,如果子查询返回单行,则主查询可以使用比较运算符
多行查询中,如果子查询返回多行,不可以使用比较运算符
16、in和exists的区别
子查询数据较少,主查询数据较多的时候用in
子查询数据较多,主查询数据较少的时候使用exists
17、常见的约束有哪些
唯一约束、主键约束、非空约束、外键约束、条件约束、级联约束
非空约束:not null
主键约束:primary key
条件约束:check
18、SQL的优化
1、尽量少用通配符:%
2、尽量用>=代替>
3、尽量少用in操作符
4、尽量不用!=操作符
5、尽量少用not exists
19、事务的特性
一致性、原子性、隔离性、持久性
一致性:是指数据库从一个完整状态跳到另一个完整状态,为了保证数据库的完整性
原子性:一个事务中,包含若干个操作,这些操作是一个整体,要么一起完成,要么一起不完成
20、数据库三大范式
第一范式:数据要设计的不可再分
第二范式:两个表之间的关系在第三张表中体现出来
第三范式:多张表之间,只存关系,不存具体信息
来源:CSDN
作者:big-liu
链接:https://blog.csdn.net/weixin_45783387/article/details/104373190