美文网首页
数据库之增删改查(基础篇)

数据库之增删改查(基础篇)

作者: 所以然WZY | 来源:发表于2018-12-25 23:04 被阅读0次

    数据库最重要的操作就是增删改查了,下面我将通过代码的形式一一介绍。

    1增加(一定要注意数据库表名和字段保持一致)
    a:设置id自动递增,增加语句时往最后一个id增加(数据库表的最后一行)。
    ```
    public class Add {
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
        Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
            //获取连接
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
            String sql = "insert into stu(name,age,sex)  values ('汉斯',30,'男')";
            PreparedStatement statement = connection.prepareStatement(sql);
    
            int i = statement.executeUpdate();
            System.out.println(i);
            statement.close();
            connection.close();
    ```
    b:取消自动递增设置,,往第二个ID 增加语句(注:此时表中不存在数字为“2”的id)
    ```
    public class Add {
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
            //获取连接
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
            String sql = "insert into stu(id,name,age,sex)  values (2,'汉斯',30,'男')";
            PreparedStatement statement = connection.prepareStatement(sql);
    
            int i = statement.executeUpdate();
            System.out.println(i);
            statement.close();
            connection.close();
        }
    ```
    在第二个位置处成功添加sql信息。
    

    2删除

    public class Delete {
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
            //获取连接
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
            String sql="delete from stu where id=?";
            PreparedStatement s= connection.prepareStatement(sql);//s称为预处理对象
            s.setInt(1,3);
            int i = s.executeUpdate();
            System.out.println("删除了几条"+i);
            s.close();
            connection.close();
        }
    }
    

    运行结果为1,将id为3的语句在stu表中删除

    3修改
    ```
    package com.pp;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    
    public class Update {
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
            //获取连接
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
            String sql = "update stu set name=?,age=? where id=?";
            PreparedStatement statement = connection.prepareStatement(sql);
    
            statement.setString(1,"露丝");
            statement.setInt(2,48);
            statement.setInt(3,1);
    
            //执行sql语句
            int i = statement.executeUpdate();
            System.out.println(i);
            statement.close();
            connection.close();
        }
    }
    
    ```
    运行结果为1,表明修改成功,成功将“露丝,48岁”添加进数据库stu表的第一个id
    

    4查询(查询应该是增删改查中最难的)
    a:查询全部数据

    public class QueryDemo {
        public static void main(String[] args) throws SQLException, ClassNotFoundException {
            Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
            //获取连接
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
            String sql="select * from stu";
            PreparedStatement statement = connection.prepareStatement(sql);
            //sql语句占位符设置实际的参数,执行sql语句
            ResultSet resultSet = statement.executeQuery();//结果集
            //遍历
            while (resultSet.next()){
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                String sex = resultSet.getString("sex");
                System.out.println(id+"\t"+name+"\t"+age+"\t"+sex);
    
            }
            resultSet.close();
            statement.close();
            connection.close();
        }
    
    1   王芝洋 90  女
    2   汉斯  30  男
    4   ewdwe   66  女
    5   ewdw    77  女
    6   张得到 23  女
    7   张给他 23  女
    8   放入福 23  女
    9   一湖光塔影   33  男
    11  汉斯  30  男
    

    b:查询某条指定数据(比如以name字段为索引查=查询name=王芝洋的字段)

    public class QueryDemo {
            public static void main(String[] args) throws SQLException, ClassNotFoundException {
                Class.forName("com.mysql.jdbc.Driver");//注册数据库驱动
                //获取连接
                Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
                String sql="select * from stu where name=?";
                PreparedStatement statement = connection.prepareStatement(sql);
                statement.setString(1,"王芝洋");
                //sql语句占位符设置实际的参数,执行sql语句
                ResultSet resultSet = statement.executeQuery();//结果集
                //遍历
                while (resultSet.next()){
                    int id = resultSet.getInt("id");
                    String name = resultSet.getString("name");
                    int age = resultSet.getInt("age");
                    String sex = resultSet.getString("sex");
                    System.out.println(id+"\t"+name+"\t"+age+"\t"+sex);
    
                }
                resultSet.close();
                statement.close();
                connection.close();
            }
    }
    

    查询结果为

    1   王芝洋 90  女
    

    相关文章

      网友评论

          本文标题:数据库之增删改查(基础篇)

          本文链接:https://www.haomeiwen.com/subject/hdmflqtx.html