今天课堂接触到JDBC
和ODBC
,老师的讲解极其简单,都是讲一些函数的如何使用函数的内容,在网上查了一些资料,部分的资料说ODBC是屏蔽了数据库底层不同的驱动,统一了API,而JDBC是在ODBC上提供了java接口,现在主要的问题有以下:
数据库驱动指得是什么?和DBMS
一样吗?
数据库具体实现不同可以理解,但SQL
是有标准的,为什么在*DBC
还说是屏蔽了数据库不同的差异呢?
解释上述问题后,请解释一下*DBC
是怎么做到屏蔽这些差异的,就是想了解*DBC
具体干了什么?简单描述一下就可以了。
除了这个*DBC
外,我也遇到ORM
这个名词,它又是指什么?
问题较复杂,如果回答的有帮助的话,我都会点赞的。
谢谢回答。
DBMS
是用来管理数据库的一套系统,其中包含了数据库驱动。所谓驱动就是用来把数据库文件解析成数据库对象的一个逻辑性的东西。SQL
的标准大家都遵守,但是不同的数据库都是自己的特性和扩展。*DBC
这种的本质都是一样的,就是封装了接口,根据数据源的不同来调用不同的接口。ORM是一个表的设计模式,就是按照对象的关系设计表,比如
xiaoming
,xiaoming_fangzi
,xiaoming_chezi
,xiaoming_laopo
这样的。