数据库技术是真实项目开发中一定会涉及的模块,不同的功能场景,数据量及性能要求的不同,会有不同的数据库技术选型,在笔面试中也是重点考察的点。同学们的学习复习建议如下:
关系型数据库学习:
很多学校学习数据库的时候,教程用的还是微软的SQL Server,用来作为方法的学习是没问题的,目前在互联网公司的现状是以MySQL或MySQL基础上自研的数据库为主。
建议学习mysql的基本用法(安装&基本的使用,包括SQL的基本用法,多表的查询,索引的使用等基础知识,语言对数据库的操作,如用php或java语言实现增删改查操作mysql的例子会写).
k-v型数据库学习
了解学习一下k-v存储的数据库选型 redis的用法,可以安装客户端操作使用一下,包括通过php或java语言实现操作redis的代码实现。
其他高阶类型数据库了解和扩展
如大数据存储hbase数据库,文档型数据库mongodb的选型,
基本的知识了解一下。了解下背景和简单原理及使用。会在笔面试中作为亮点。
备战注意点划重点
基础语言+数据库能力层效果
写基本的程序,流程是数据处理+存储,增删改查。
最基本的程序开发流程。
构建的第一层能力。
C语言和面向对下语言(java、c++)要求在5分钟左右完成基本功能的编写,一般是手写
讲讲考察的场景
1.两个字符串取交集
2.将单词反转:I am a student反转为 student a am I
- C语言的考察大多数考察的题目是结合数据结构、基础算法来共同考察的。大家注意。这种考察方法省时省力,基础语言和专业知识融合实践考察。
- 都知道哪些排序算法,写一个熟悉的排序算法,给出时间复杂度
- 两个无序链表,。合并为一个升序链表。
- 数据库的考察侧重实战。单独出题对数据的统计分析SQL考察,索引等数据查询优化知识点的考察,数据库范式设计等基础知识的考察。注意平时联系和笔记记录,随时复习。上面讲的不同类型的数据库,注意在面试项目讲解讨论中表达对技术选型的思考。
(1)有一个留言板,用mysql做数据库,用户信息包括:用户名,密码,email,留言内容
包括:留言ID,标题,内容,发表时间,状态(审核,未审核)
要求:能够较梳理写出表设计
(2) 用一个sql语句查询出发表留言数量大于10条的用户名及其留言数量,查询结果按文章数量降序排列
5.突出自己所有的编程和训练都是在Linux环境下完成,日常在学校都是Linux环境。
构建了这一层,具备了最初级程序员的能力。有了皮毛功夫,修炼内功需要专业知识的填充和支撑。