星期三, 九月 19, 2007

JAVA笔记-09-数据库编程(JDBC)

660
  1. 几乎任何实用级别的程序都和数据库有点关系。
  2. JDBC来源于ODBC(Open Database Connectivity),后者是通过代码存取数据独立的形式简化数据库编程的一种技术。JDBC也差不多,允许撰写和数据库无关的代码,这样就可以使代码不但和JVM无关,海河某个具体的数据库无关。
  3. JDBC集成在J2SE中,存放在java.sql和javax.sql中。
  4. JDBC的功用主要为联接数据库、送出SQL语句并执行、处理反馈的结果集。
  5. JDBC驱动可以分为4类:驱动类型1,桥接式驱动,来源于ODBC,现在已经很少用;驱动类型2,本地API驱动,转换为本地调用,一般是 数据库厂商提供的,分发部署数据库的时候需要这些本地代码;驱动类型3,JDBC-NET驱动,转换为数据库无关的网络协议调用,好处在于不需要客户端提 供任何东东,并且同一个驱动可以用于多个数据库,一般是通过中间件来实现的,第三个厂商往往提供这种类型的驱动;驱动类型4,本地协议驱动,直接转换为本 地代码对数据库进行调用,是纯JAVA的驱动,数据库厂商一般提供的都是这种驱动。
  6. 只存取一种类型的数据库,比如Oracle、Sybase、IBM,一般用驱动类型4;如果您的程序同时存取多种类型的数据库,推荐使用驱动类型3;加入3和4都不存在,一般就只能用驱动类型2了;驱动类型1一般不用来在发布程序的时候使用,仅仅用在开发阶段或测试阶段。
  7. 使用DriverManager(位于java.sql)联接数据库:使用驱动类型1的时候需要手动加载相关驱动,语句如 Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");;url类似于jdbc::<>
  8. 使用DataSource联接数据库:url类似于jdbc//;使用此方法需要绑定数据库,一般需要通过属性文件来定义。
  9. SQL(结构化可查询语言)的常规操作有CRUD,分别指构建、读取、更新、删除。
  10. 通过DriverManager或DataSource建立Connection后可以呼叫SQL语句,分为三种Statement(没有参 数的语句)、PreparedStatement(预编译的SQL语句,带有参数,在执行前需要设定)、CallableStatement(数据库中的 已存储过程)。

没有评论: