从最简单的角度讲,数据库是这样子一个东西:
首先,一台电脑安装了数据库软件比如MySQL之后,可以在建立多个数据库,以便不同的需求使用不同的数据库,此处每个数据库我们一般称之为database。
第二,一个database下面可以包含多个表,可以理解为类似为Excel的一页,不同的是,数据库每一列都有明确的类型规定(比如本列都是数字)和其他限定(比如本列中每一个元素长度都不超过20)。
第三,数据库启动后,会在数据库所在计算机(这样的计算机可以成为数据库服务器),开启一个数据库服务。这个服务会通过一个端口(MySQL默认是3306端口)对外通讯,比如我们写的Java程序要跟数据库交互了,就要往这个端口发数据,此时数据库服务一直在这个端口等着呢,我们使用SQL语言发过来的信息,数据库服务就能理解,理解完了之后就按我们的需求处理数据返回结果。
OK,猫哥说的有点不明不白的,最好结合我的手记里面MySQL安装部分理解:点此查看。
好了,然后咱们讨论以下几个数据库MySQL、SQL Server、Oracle。
首先,在初学阶段,这三个数据库学哪个都够用了,所以不必纠结。第二,MySQL特点是比较小,但是该有的功能都有,小公司用的多,而且跟Java语言是绝配。Oracle是份额最高的,功能全面而且非常稳定效率高,大中型公司最爱。SQL Server是微软出品的,所以如果用C#等微软系的语言,肯定跟SQL Server比较搭。第三,对Java而言,这三种数据库操作起来基本是一样的,但是并不完全一样,比如:这三者虽然都是使用SQL语言,但是三种数据库对SQL语言和标准遵循力度不大一样,所以如果一个项目是在Oracle数据库做的,后来想迁移到MySQL,还是需要费一些功夫的。
OK,在此后几篇中,猫哥只关注MySQL数据库。首先会建一个最简单的数据库表,实现最常用的“增删改查”;然后实现一个数据库连接池的例子,提高数据库操作效率;然后演示下多表连接的方式,如何使用设计Java类更加合理;最后,猫哥想提出两种简化代码量的方式,都比较低级(此处猫哥先说好,省的到时候被喷,哈哈哈),敬请期待。