zoukankan      html  css  js  c++  java
  • SQL对数据库的操作

     查询记录
    要查询数据库中的记录,必须和数据库建立连接,由于使用的是JDBC-ODBC 方式
    访问数据库,那么就要与数据源建立连接。

    (1)连接到数据库
    首先使用包java.sql 中的Connection 类声明一个对象,然后再使用类DriverManager
    调用它的静态方法getConnection创建这个连接对象:
    Connection con = DriverManager.getConnection("jdbc:odbc: 数据源名字","login
    name", "password ");
    假如您没有为数据源设置login name 和password,那么连接形式是:

    Connection con = DriverManager. getConnection("jdbc:odbc: 数据源名字", "",
    "");
    与数据库 pubs(它就是数据源sun)建立连接,格式如下:
    try{ Connection con = DriverManager. getConnection("jdbc:odbc:sun", "sa", "") ;
    }catch(SQLException e)
    {}

    (2)向数据库发送SQL语句。
    首先使用Statement声明一个SQL 语句对象,然后通过刚才创建的连接数据库的对象
    con调用方法createStatment()创建这个SQL 语句对象。
    try {Statement sql=con.createStatement();}
    catch(SQLException e ){}

    (3)处理查询结果
    有了 SQL 语句对象后,这个对象就可以调用相应的方法实现对数据库中表的查询和
    修改。并将查询结果存放在一个ResultSet 类声明的对象中,也就是说SQL 语句对数据
    库的查询操作将返回一个ResultSet 对象:
    ResultSet rs=sql.executeQuery("SELECT * FROM 成绩表");

    顺序查询
    使用结果集Result 的next()方法,可以顺序的查询。一个结果集将游标最初定位在第
    一行的前面,第一次调用next()方法使游标移动到第一行。next()方法返回一个boolean
    型数据,当游标移动到最后一行之后返回false。

    主要语句:

    Connection con;
    Statement sql;
    ResultSet rs;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    }
    catch(ClassNotFoundException e){}
    try { con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
           sql=con.createStatement();
           rs=sql.executeQuery("SELECT * FROM students");

          while(rs.next())
    {...............

    }
    con.close();
    }
    catch(SQLException e1) {}

    添加记录
    我们可以使用SQL 语句添加新的记录,Statement对象调用方法:
    public int executeUpdate(String sqlStatement);
    通过参数sqlStatement 指定的方式实现向数据库表中添加新记录,例如,下述语句将
    向表students 中添加一条新的记录:(’199911’,’美丽家’,100,99,98)。
    298
    executeUpdate("INSERT INTO students VALUES (’199911’,’美丽家’,100,99,98)");

     删除记录
    我们可以使用SQL 语句删除记录,Statement对象调用方法:
    public int executeUpdate(String sqlStatement);
    通过参数sqlStatement 指定的方式删除数据库表中的记录,例如,下述语句将删除学
    号是199904 的记录:
    executeUpdate("DELETE FROM students WHERE 学号 = ‘199904’ ");

    更新记录

         Statement stmt=null;
        String s="Update abc set value='1'where num='"+ID+"'";  //表名abc,得到结果
        stmt=conn.createStatement();
        stmt.executeUpdate(s);

  • 相关阅读:
    准备 FRM 考试——方法、工具与教训
    930. 和相同的二元子数组 前缀和
    1906. 查询差绝对值的最小值 前缀和
    剑指 Offer 37. 序列化二叉树 二叉树 字符串
    815. 公交路线 BFS
    518. 零钱兑换 II dp 完全背包
    1049. 最后一块石头的重量 II dp
    5779. 装包裹的最小浪费空间 二分
    5778. 使二进制字符串字符交替的最少反转次数 字符串 滑动窗口
    474. 一和零 dp
  • 原文地址:https://www.cnblogs.com/shangwne/p/3617562.html
Copyright © 2011-2022 走看看