JavaWeb后端开发,数据库知识需要掌握到何种程度?

一般来说,我们将网站分为前端和后端。前端主要负责页面的展示,后端则是业务逻辑的实现,后端是由一些实现业务逻辑的Java代码和数据库组成。Javaweb做后端,数据库方面需要掌握到哪种程度?我把我能想到的技能点给大家简单罗列了一下,希望能对大家的工作和学习有所帮助(可能不够完善,欢迎大家随时补充):

  • 需要对Mysql、Oracle、SqlServer这三个常用的数据库熟悉了解。
  • 在数据量比较大或者请求数比较高的情况下,需要了解一些特定数据库针对性优化。
  • 熟悉表、字段、记录、索引等概念。
  • 熟悉SQL的约束,非空、默认值、唯一值等约束。熟悉主键、外键、检查约束等。
  • 熟悉数据类型,文本,数字,日期/时间,二进制等。
  • 熟练使用数据操作语言 (DML),SELECT、UPDATE、DELETE、INSERT INTO等语句,这些数据操作语法,在多数功能需求中,是基本组成部分。
  • 熟练使用数据定义语言 (DDL),DATABASE的CREATE 、ALTER;DATABASE的CREATE 、ALTER;TABLE的CREATE 、ALTER、DROP;INDEX的CREATE、DROP。是系统的数据库设计必需的定义语法。也会是系统迭代升级阶段常常进行的数据结构变更操作。
  • 熟悉SQL连接的使用,INNER JOIN,LEFT JOIN,RIGHT JOIN,FULL JOIN,UNION,UNION ALL。
  • 熟悉聚集函数的使用,sum,avg,count,max,min,以及group by和having 的配合。以及DISTINCT去重。
  • 熟练使用子查询。掌握数据库规范化,熟悉第一范式(1NF),第二范式(2NF),第三范式(3NF)。
  • 熟悉数据库理论中数据模型,及关系模型。
  • 完成模块功能需求的数据库设计。
  • 熟练使用index优化查询性能。
  • 了解存储过程、自定义函数、触发器、视图的使用。
  • 熟悉程序对数据库事务处理。
  • 了解各数据库对数字、字符串、时间的处理函数。
  • 熟练使用PowerDesigner进行表结构设计。熟练
  • 熟练进行系统数据库设计。
  • 了解各数据库对数据类型处理上的差异。
  • 优化表的设计提高性能需求。
  • 熟练使用分表分区等特性。
  • 了解索引机制及类型。
  • 熟练运用数据控制 (DCL),GRANT、REVOKE。
  • 熟练使用explain分析SQL的执行计划。数据库系统相关
  • 主要针对常用的数据库,mysql,oracle,SQLServer。当然其它数据库的要求也类似。入门开发环境的数据库的安装配置。
  • 熟练使用数据库对应的客户端,Mysql常用SQLyog,oracle常用的是PL/SQL Developer,SQLServer自带的客户端。另外通用的客户端navicat和Toad都比较强大。
  • 程序连接数据库。
  • 掌握了解各数据库系统的组成部分。
  • Mysql了解innodb文件组成,及结构。oracle的文件,表空间,数据块,区,段等。
  • 了解各数据库的SQL的执行过程。熟练
  • 熟悉各数据库的体系结构。
  • 熟悉分表分库的方案。
  • 了解集群的部署。如Oracle的RAC,MySQL集群的各种方案。
  • 了解读写分离的方案(主备),了解binlog。
  • 了解数据库系统层级的优化方案。

 

你可能感兴趣的:(JavaWeb后端开发,数据库知识需要掌握到何种程度?)