实验五 通用接口数据库编程

实验五 通用接口数据库编程

第1关:JDBC 查询数据

package step1;

import java.sql.\*;

publicclass Query {

 publicstaticvoid queryDB(){

 // 声明变量

 Connection conn = null;

 Statement stat = null;

 ResultSet rs = null;/\*\*\*\*\*\*\*\*\* 查询出的数据保存在这个结果集里 \*\*\*\*\*\*\*\*\*/

    // "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)

    /\*\*\*\*\*\*\*\*\* 教室机密码是root,用户名(root) \*\*\*\*\*\*\*\*\*/

    String username ="root";

    String password ="123123";

    // 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8

    String url ="jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8";

 try{

        /\*\*\*\*\*\*\*\*\* Begin \*\*\*\*\*\*\*\*\*/

        // 1.加载驱动

        Class.forName("com.mysql.jdbc.Driver");

  // 2.建立数据库连接

  conn = DriverManager.getConnection(url, username, password);

        // 3.定义sql

        String sql ="SELECT \* FROM s";

  // 4.建立statement对象

  stat = conn.createStatement();

  // 5.查询数据,输出结果

  rs = stat.executeQuery(sql);

  // 输出结果

  System.out.println("sno\tsname\tstatus\tcity");

  while(rs.next()){

   System.out.println(rs.getString("sno")+"\t"+ rs.getString("sname")+"\t"+ rs.getInt ("status")+"\t"

     + rs.getString("city"));

  }

        /\*\*\*\*\*\*\*\*\* End \*\*\*\*\*\*\*\*\*/

 }catch(SQLException e){

  e.printStackTrace();

 }catch(ClassNotFoundException e){

  e.printStackTrace();

 }finally{

  try{

            if(rs != null){

    rs.close();

   }

   if(stat != null){

    stat.close();

   }

   if(conn != null){

    conn.close();

   }

  }catch(Exception e){

   e.printStackTrace();

  }

 }

}

}

第2关:JDBC 插入数据

package step1;

import java.sql.\*;

publicclass Insert {

 publicstaticvoid insertDB(){

  // 声明变量

  Connection conn = null;

  Statement stat = null;

        // "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)

        String username ="root";

        String password ="123123";

        // 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8

        String url ="jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8";

  try{

            /\*\*\*\*\*\*\*\*\* Begin \*\*\*\*\*\*\*\*\*/

   // 1.加载驱动

            Class.forName("com.mysql.jdbc.Driver");

   // 2.建立数据库连接

            conn = DriverManager.getConnection(url, username, password);

   // 3.建立statement对象

            stat = conn.createStatement();

   // 4.定义SQL

            String sql ="INSERT INTO s(sno, sname, status, city) VALUES ('S6','泰鑫',10,'十堰')";

   // 5.执行SQL

            int result = stat.executeUpdate(sql);

            // 6.处理结果

            if(result ==1){

                System.out.println("插入成功!");

            }else{

                System.out.println("插入失败!");

            }

            /\*\*\*\*\*\*\*\*\* End \*\*\*\*\*\*\*\*\*/

  }catch(SQLException e){

   e.printStackTrace();

  }catch(ClassNotFoundException e){

   e.printStackTrace();

  }finally{

   try{

    if(stat != null){

     stat.close();

    }

    if(conn != null){

     conn.close();

    }

   }catch(Exception e){

    e.printStackTrace();

   }

  }

 }

}

第3关:JDBC 更新数据

package step1;

import java.sql.\*;

publicclass Update {

    publicstaticvoid updateDB(){

        // 声明变量

        Connection conn = null;

        Statement stat = null;

        // "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)

        String username ="root";

        String password ="123123";

        // 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8

        String url ="jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8";

        try{

            /\*\*\*\*\*\*\*\*\* Begin \*\*\*\*\*\*\*\*\*/

            // 1.加载驱动

            Class.forName("com.mysql.jdbc.Driver");

            // 2.建立数据库连接

            conn = DriverManager.getConnection(url, username, password);

            // 3.定义SQL

            String sql ="UPDATE s SET sname = '东风', status = 40, city = '十堰' WHERE sno = 'S5'";

            // 4.建立statement对象

            stat = conn.createStatement();

            // 5.执行SQL

            int rows = stat.executeUpdate(sql);

            // 6.处理结果

            if(rows \>0){

                System.out.println("更新成功!");

            }else{

                System.out.println("更新失败!");

            }

            /\*\*\*\*\*\*\*\*\* End \*\*\*\*\*\*\*\*\*/

        }catch(SQLException e){

            e.printStackTrace();

        }catch(ClassNotFoundException e){

            e.printStackTrace();

        }finally{

            try{

                if(stat != null){

                    stat.close();

                }

                if(conn != null){

                    conn.close();

                }

            }catch(Exception e){

                e.printStackTrace();

            }

        }

    }

}

第4关:JDBC 删除数据

 package step1;

import java.sql.\*;

publicclass Delete {

    publicstaticvoid deleteDB(){

        // 声明变量

        Connection conn = null;

        Statement stat = null;

        // "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)

        String username ="root";

        String password ="123123";

        // 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8

        String url ="jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8";

        try{

            /\*\*\*\*\*\*\*\*\* Begin \*\*\*\*\*\*\*\*\*/

            // 1. 加载驱动

            Class.forName("com.mysql.jdbc.Driver");

            // 2. 建立数据库连接

            conn = DriverManager.getConnection(url, username, password);

            // 3. 定义SQL

            String sql ="DELETE FROM s WHERE sno = 'S5'";

            // 4. 建立statement对象

            stat = conn.createStatement();

            // 5. 执行SQL

            int rows = stat.executeUpdate(sql);

            // 6. 处理结果

            if(rows \>0){

                System.out.println("删除成功!");

            }else{

                System.out.println("删除失败!");

            }

            /\*\*\*\*\*\*\*\*\* End \*\*\*\*\*\*\*\*\*/

        }catch(SQLException e){

            e.printStackTrace();

        }catch(ClassNotFoundException e){

            e.printStackTrace();

        }finally{

            try{

                if(stat != null){

                    stat.close();

                }

                if(conn != null){

                    conn.close();

                }

            }catch(Exception e){

                e.printStackTrace();

            }

        }

    }

}

第5关:JDBC 条件查询

package step1;

import java.sql.\*;

import java.util.Scanner;

publicclass QuerySno {

    publicstaticvoid queryDB(){

        // 接收供应商编号

        Scanner scanner =new Scanner(System.in);

        String sno = scanner.next();

        // 声明变量

        Connection conn = null;

        PreparedStatement psmt = null;

        ResultSet rs = null;

        // "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)

        String username ="root";

        String password ="123123";

        // 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8

        String url ="jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8";

        try{

            /\*\*\*\*\*\*\*\*\* Begin \*\*\*\*\*\*\*\*\*/

            // 1.加载驱动

            Class.forName("com.mysql.jdbc.Driver");

   // 2.建立数据库连接

            conn = DriverManager.getConnection(url, username, password);

   // 3.定义sql

            String sql ="SELECT \* FROM s WHERE sno = ?";

            /\*\*\*\*\*\*\*\*\* ?占位符 \*\*\*\*\*\*\*\*\*/

   // 4.建立PreparedStatement对象

            psmt = conn.prepareStatement(sql);

            /\*\*\*\*\*\*\*\*\* 预编译SQL语句 \*\*\*\*\*\*\*\*\*/

   // 5.注册PreparedStatement对象的参数

            psmt.setString(1, sno);

   // 6.查询数据,输出结果

            System.out.println("sno\tsname\tstatus\tcity");

   rs = psmt.executeQuery();

   while(rs.next()){

    System.out.print(rs.getString("sno")+"\t");

    System.out.print(rs.getString("sname")+"\t");

    System.out.print(rs.getInt("status")+"\t");

    System.out.println(rs.getString("city")+"\t");

   }

            /\*\*\*\*\*\*\*\*\* End \*\*\*\*\*\*\*\*\*/

        }catch(SQLException e){

            e.printStackTrace();

        }catch(ClassNotFoundException e){

            e.printStackTrace();

        }finally{

            try{

                if(rs != null){

                    rs.close();

                }

                if(psmt != null){

                    psmt.close();

                }

                if(conn != null){

                    conn.close();

                }

            }catch(Exception e){

                e.printStackTrace();

            }

        }

    }

}
posted @ 2023-05-09 23:37  梦羽儿  阅读(247)  评论(0编辑  收藏  举报