课时4:Statement语句

来源:互联网 发布:js 修改less 变量 编辑:程序博客网 时间:2024/05/16 13:41
1.Statement语句是SQL语句的描述,使用它可以操作各种SQL语句,包括DDL(数据定义语句,如创建表)、DML(CRUD)和DCL等。
2.使用Statement创建表。

最开始创建Test2,同时因为调用和命名的冲突,注释掉Test。
1.创建CreateTbl语句。
这里定义的String sql=“xxx”;实际上就是创建的MySQL的DOS指令,也就是双引号里面的内容可以在MySQL的DOS界面下直接执行。
创建方法:
1).创建一个connection连接
2).创建一天MySQL执行语句
3).创建一个Statement
4).将Statement与Connection相关联
5).通过Statement执行sql语句
6).最后别忘了关闭数据库。DBUtil.close(conn),而不是conn.close()

2.建立insert语句。这里每执行一次,数据库就增加一个表单。相对于createTbl,只需要修改sql语句,同时把statement的excute改为excuteUpdate。因为插入之后要更新才能显示。
3.建立update语句。相对于insert只需要修改sql语句。
4.建立delete语句。相对于insert只需要修改sql语句。
5.建立query语句。这里,要建立结果集ResultSet rs=stmt.executeQuery(sql);并且遍历
6.建立基于List的query语句。
1).建立User方法,并建立getset方法,覆盖toString方法。
2).返回值要改为List<User>
3).通过遍历,将结果集插入到List表单中。别忘了return list,以及trycatch以后,return null

package com.geek99.demo;


import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.List;

public class Test2 {

    public Test2() {
    }

    public static void main(String[] args) {
//        CreateTable();
//        insert();
//        update();
//        delete();
        query();
    }

//    static void CreateTable(){
//    Connection conn=DBUtil.open();
//    String sql="create table UserTbl(id int primary key auto_increment,name varchar(20))";
//    Statement stmt;
//    try {
//        stmt = conn.createStatement();
//        stmt.execute(sql);
//    } catch (SQLException e) {
//        // TODO Auto-generated catch block
//        e.printStackTrace();
//    }finally{
//        DBUtil.close(conn);
//        }        
//}

    static void insert(){
        Connection conn=DBUtil.open();
        String sql="insert into UserTbl(name)values('tom')";
        Statement stmt;
        try {
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            DBUtil.close(conn);
            }        
    }

    static void update(){
        Connection conn=DBUtil.open();
        String sql="update UserTbl set name='big tom' where id>3";
        Statement stmt;
        try {
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            DBUtil.close(conn);
            }        
    }

    static void delete(){
        Connection conn=DBUtil.open();
        String sql="delete from UserTbl where id=3";
        Statement stmt;
        try {
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            DBUtil.close(conn);
            }        
    }

//    static void query(){
//        Connection conn=DBUtil.open();
//        String sql="select id,name from UserTbl";
//        Statement stmt;
//        try {
//            stmt = conn.createStatement();
//            ResultSet rs=stmt.executeQuery(sql);
//            while(rs.next()){
//                int id=rs.getInt(1);
//                String name=rs.getString(2);
//                System.out.println(id+":"+name);
//            }
//        } catch (SQLException e) {
//            // TODO Auto-generated catch block
//            e.printStackTrace();
//        }finally{
//            DBUtil.close(conn);
//            }        
//    }

    static List<User> query(){
        Connection conn=DBUtil.open();
        String sql="select id,name from UserTbl";
        Statement stmt;
        try {
            stmt = conn.createStatement();
            ResultSet rs=stmt.executeQuery(sql);
            List<User> list=new ArrayList<User>();
            while(rs.next()){
                int id=rs.getInt(1);
                String name=rs.getString(2);
    //            System.out.println(id+":"+name);
                User u=new User();
                u.setId(id);
                u.setName(name);
                list.add(u);
            }
            System.out.println(list);
            return list;
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            DBUtil.close(conn);
            }    
        return null;
    }


}

0 0