入职笔记之数据库篇

入职笔记之数据库篇

在进入职场工作之前我总有一个疑问,为什么数据库的八股文这么多,多到根本不可能背不完,数据库知识真的有这么重要吗?还是只是说这是资本家为了引起行业内卷的手段?但是作为一个求职者也只能背,没有任何办法。

今天虽然入职还没有满一个星期,但是我对这个问题有了个初步的认识,这个认识得结合另外一个问题——真实的测试环境是怎么样的,一个真正的程序员是如何进行测试的。

目前入职四天完成了两个需求,不过都是leader给我的比较入门的简单需求,给我一个第一次实习的实习生一个很清晰的认识,感觉逐渐拨开了眼前对实习的未知迷茫的迷雾。

认识

真实的测试环境一定是包含了众多的数据的,这些数据可能是公司里的人造的,也有可能是复制了公司别的数据库中的数据,总之这个数据量一定很大,平时在学校内学的或者自学的几乎所有的需求都是可以用Navicat这种可视化数据库工具解决的,虽然经过我的测试这种工具在工作中也十分好用,但重点是真实的数据量十分的庞大,可能大多数人在入职前都不会知道Navicat的可视化上限是1k条吧,作为个体根本达不到这种庞大的数据量,所以很注重用sql去筛选需要的数据。

可能会有的打算法的同学问了,在算法竞赛中只需要将各种情况的数据一一罗列出来,测试样例根本不会掺杂这么多的数据,不然跑起来岂不是很慢吗,那不就影响了测试的效率了吗?

其实并不尽然,因为在真实的开发环境中,其实创造者根本想不到这么多的情况,也不可能注意别人代码中潜在的bug(说实话看别人的代码除非是真的大佬写的非常有水平又规范,不然看起来就是一坨屎),所以最好的方法就是使用庞大的数据量去测试潜在的bug,毕竟对于公司的项目来说任何一个小bug都有可能影响整个项目!

那么这和sql有什么关系呢

在项目中也有很多地方需要查找sql,提前建立好索引,分库分表等操作都能提升程序的性能

以及前文说的,由于数据量庞大,几乎你所需要获取的信息都只能使用sql查询的方式获取

以及在平时不容易触及到的,但是在真实的环境中会存在的百万级并发(可能大多数小业务不太能接触到?但至少我这个并发量确实很大,是真用到了这些东西,以及我完全不会的分布式)

总结

sql必须会熟练地写,该知道的也肯定得知道,毕竟虽然大家口口声声说瞧不起crud工程师,但实际上大家都十分得精通crud,毕竟curd是所有程序员基础中的基础,不过网上那些屎山一样的八股文确实有点太过了,我的评价是都是傻逼java害的

posted @ 2025-07-10 23:36  夏尾草  阅读(9)  评论(0)    收藏  举报