‘壹’ jdbc和odbc区别
ODBC(开放数据库互连)是微软公司开放服务结构(WOSA)中的数据库组成部分,它提供了一套规范和标准API,通过SQL完成数据库访问任务。ODBC本身支持SQL语言,用户可以直接将SQL语句发送给ODBC。
JDBC(Java数据库连接)是执行SQL语句的Java API,由一组Java类与接口组成。JDBC已经成为一种标准API,开发者可以使用它来编写数据库应用。
Java不能直接使用ODBC,因为ODBC使用C语言接口,而Java调用本机C代码可能会带来安全、属性、健壮性和应用移植性等问题。
另外,不希望将ODBC的C API逐字翻译成Java API。ODBC使用了大量容易出错的指针,而Java取消了这种不安全的指针。通过JDBC,可以将ODBC翻译成具有Java风格的面向对象接口。
ODBC的学习曲线较陡,因为它将简单功能和高级功能混杂在一起,即使是简单的查询也会带来复杂的选项。而JDBC的设计使得简单的事情用简单的做法,仅在必要时才让用户使用高级功能。
JDBC的Java API提供了一个“纯Java”的解决方案。当使用ODBC时,ODBC驱动管理程序与驱动必须手工安装在每台客户机上。而JDBC驱动全部是用Java编写的,可以在所有Java平台上自动安装,并且是可移植和安全的。
JDBC还支持多种数据库,只需安装相应的JDBC驱动即可,而无需安装ODBC驱动。此外,JDBC还提供了更多的连接选项和错误处理机制,使得开发人员可以更方便地处理各种数据库连接问题。
总之,JDBC相比ODBC在安全性、可移植性、易用性和功能丰富性上都有明显的优势。