• 十五、JDBC操作数据库


    1、数据库特点

      实现数据共享、减少数据的冗余度、数据的独立性、数据集中控制、数据的一致性和可维护性。

    2、数据库种类和功能

    (1)层次型数据库:类似于树结构,是一组通过链接而互相联系在一起的记录。

    (2)网状型数据库:网络模型是使用网络结构表示实体类型、实体间联系的数据模型。

    (3)面向对象型数据库:建立在面向对象模型的基础上。

    (4)关系型数据库:基于关系模型建立的数据库,关系模型由一系列表格组成。

    3、JDBC常用类和接口

    (1)DriverManager类

      管理数据库中所有的驱动程序。

      方法:(静态)getConnection(Stirng url,String user,String password)

             setLoginTimeout()

             println(String message)

    (2)Connection接口

      与特定的数据库连接。

      创建对象:getConnection()

      方法:createStatement():创建Statement对象

         createStatement(int resultSetType,int resultSetConeurrency)

         prepareStatement():创建预处理对象

         isRacadOnly():查看是否是只读

         setReadOnly():设置读写模式,默认非只读

         commit():使所有上一次提交、回滚后的更改成为持久更改,并释放所有数据库锁

         roolback():取消当前事物所有更改,并释放所持有的数据库锁。

         close():立即释放Connection对象的数据库和JDBC资源。

    (3)Statement接口

      用于创建向数据库中传递SQL语句的对象。

      方法:execute():执行静态的SELECT语句,可能返回多个结果表。

         executeQuery(String sql):执行给定的SQL语句,返回单个ResultSet对象

         clearBatch():清空对象当前的SQL命令列表

         executeBatch():将一批命令提交给数据库执行,如果全部命令执行成功,则返回更新计数组成的数据,数据的顺序与SQL语句的添加顺序对应

         executeUpadate():执行给定的SQL语句,该语句可以为INSERT、UPDATE或DELETE语句

         addBatch():将给定的SQL命令添加到此Statement对象的当前命令列表中,如果驱动程序不支持批量处理将抛出异常。

    (4)PreparedStatement接口

      PrepareStatement接口继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行的SQL语句,将被编译并保存到PreparedStatement实例中。

      方法:execute():执行SQL语句

         executeQuery():执行SQL查询语句,返回结果为查询结构集ResultSet对象

         executeUpdate():执行SQL语句,该语句必须是一个INSERT、UPDATE、DELETE语句,或是没有返回值的DDL语句

         setByte(int pIndex,byte bt)

         setDouble(int pIndex,double dou)

         setInte(int pIndex,int x)

         setObject(int pIndex,Object o)

         setString(int pIndex,String str)

    (5)ResultSet接口

      类似于一个临时表,暂时存放数据库查询操作所过的的结果集。

      方法:getInt()、getFloat()、getDate()、getBoolean()、getString()、getObject()、next()、updateInt()、updateFloat()、updateLong()、updateString()、updateObject()、updateNull()、updateDate()、updateDouble()

    4、操作数据库

    (1)加在数据库驱动

      调用forName():Class.forName(String driverManager)

    (2)建立连接

      getConnection(),将URL、用户名和密码作为参数

    (3)向数据库添加数据

      获得Statement对象:Connection接口的createStatement(),或调用PreparedStatement()方法

      通过executeUpdate()方法执行SQL语句

    (4)获得查询结果集

      executeQuery()方法执行SELECT查询语句,返回一个ResultSet型的结果集。通过遍历结果集的内容,获得SQL语句执行的结果。

      while循环中使用next()方法迭代结果集。

    (5)更改数据库中的数据

      Statement接口中的executeUpdate()方法进行修改操作,或PreparedStatement接口中的executeUpdate()方法。

    (6)删除数据库中的数据

      executeUpdate()方法

    (7)模糊查询

      LIKE关键字,“%”代替0或多个字符,“_”代替一个字符

  • 相关阅读:
    面向对象的分析与设计
    Django的ORM补充
    JDBC数据库连接池
    Python 中的深浅拷贝
    智能机系统分析
    hyperf框架学习
    HTTP协议知识
    百度知道有关php抓取问题
    awk之FS的指定
    从DELPHI到JAVA[delphi]
  • 原文地址:https://www.cnblogs.com/yl-saber/p/6018713.html
Copyright © 2020-2023  润新知