常见的数据库面试题分享

作为一个软件测试工程师需要掌握的领域比较广泛,比如常见的系统命令,编程的基本能力,测试技能,数据库测试技能....其中数据库技能也是一个测试工程师基本需要掌握的技能,今天呢,我就给大家分享一些面试测试过程中经常被问到的数据库相关的问题。

一、关系型数据库与非关系型数据库

1、关系型数据库

主要是指用关系模型来组织数据的数据库

关系模型主要指的是二维表

关系:一张二维表

元组:二维表中的一行数据

属性:二维表中的一列

2、非关系型数据库

统称非关系型的数据库

二、多表查询中左连接与右连接的区别

1、左连接

以左边的表为主表,右边的表与左边的表进行相关联的查询,左边的表所有数据都返回,

右边的表只有和左边的表数据相匹配的才返回。

语法:

Select * from 左表 left join 右表 on 左表.字段=右表.字段;

2、右连接

以右边的表为主表,左边的表与右边的表进行相关联的查询,右边的表所有数据都返回,

左边的表只有和右边的表数据相匹配的才返回。

语法:

Select * from 左表 right join 右表 on 左表.字段=右表.字段;

三、事务的四大特性

1、原子性(Atomic):

事务中各项操作,要么全都做要么全都不做,任何一项操作如果失败都会

导致整个事务的失败;

2、一致性(Consistent):

事务结束后系统状态是一致的;

3、隔离性(Isolated):

并发执行的事务彼此之间无法看到对方的中间状态;

4、持久性(Durable):

事务完成后所做的改动都会被持久化。

四、索引的优缺点,哪些字段适合建立索引

1、索引的优点:

最大的优点是索引可以提高查询的速度

创建唯一索引,可以保证数据的唯一性

2、索引的缺点:

索引需要占用空间,所需的空间会更大

如果对表进行增加,删除和修改数据时,索引也需要同步更新

3、适合建立索引的字段:

1、经常被查询的字段适合建立索引

2、表中主键的字段适合建立索引

3、经常被排序或分组的字段适合建立索引

4、经常作为联连条件的字段适合建立索引

5、经常在where 后面出现的字段适合建立索引

五、多表查询中,连接查询有哪几种常用类型

1、内连接

内连接,如果两个表的相关字段相匹配,就从这两个表中提取数据并组合成新的表

2、左连接

以左边的表为主表,右边的表与左边的表进行相关联的查询,左边的表所有数据都返回,

右边的表只有和左边的表数据相匹配的才返回。

3、右连接

以右边的表为主表,左边的表与右边的表进行相关联的查询,右边的表所有数据都返回,

左边的表只有和右边的表数据相匹配的才返回。

4、全连接

左右两边的表数据全部返回,如果没能找到匹配的元组,就使用NULL来代替

5、交叉连接

指两个表中所有元组的任意组合

6、自然连接

两个表中必须要有相同的属性列,不需要添加连接条件,就可以自然而然的进行连接查询。

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
qq群号:485187702【暗号:csdn11】
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值