Java傻瓜式学习第十一天

Java傻瓜式学习第十一天

2023.7.14

昨日内容

1.MySQL(指令)

1. 和库相关
create database 数据库名称
character set utf8(注:这行代码让数据库可以录入中文)

use 数据库名称
2.和表相关
建表:
create table 表名{
字段1 数据类型,
字段2 数据类型,

}
删表:
drop table 表名
3.和数据相关
更新:
添加:
insert into 表名 (字段1,字段2,…) 注:表名后不接字段1,字段2…默认全部数值
values(数值1,‘数值2’,…)
删除:
delete from 表名 where 条件
修改:
update 表名 set 字段1=新值,字段2=新值,…
where 条件(限制条件)
查询
select*from 表名

2.Java链接Mysql

1.类和表的关系
类名---------------表名(等价于)
对象---------------一行数据(等价于)
内部数据---------字段(等价于)
2.操作
新建lib目录添加mysql-connector-java并解压(鼠标右击,add as)
代码:

  1. 加载内存--------Class.forName(“”)
  2. 获取链接--------Connection con=DriverManager.getconnection(url,user,password)
  3. 获取执行sql语句平台---------Statement 自定义名称 = con.createStament();
    -------------------------------------执行sql

今日内容

1.添加(添加数据)

  System.out.print("请输入需要添加的学生id:");
                int tid= sc.nextInt();
                System.out.print("请输入需要添加的学生身高:");
                Double thight= sc.nextDouble();
                System.out.print("请输入需要添加的学生年龄:");
                int tage=sc.nextInt();
                System.out.print("请输入需要添加的学生姓名:");
                String tname= sc.next();
                int i=statement.executeUpdate("INSERT INTO students " +
                   "VALUES (" + tid + "," + thight + "," + tage + ",'" + tname + "')");
                if (i!=0) { 
                    System.out.println("添加数据成功!");
                }

2.删除(删除数据)

System.out.println("请输入需要删除的学生id:");
                int sid= sc.nextInt();
                int i=statement.executeUpdate("DELETE from students where id="+sid);
                if (i!=0){
                    System.out.println("删除数据成功!");
                }if (i==0){
                    System.out.println("学生系统无此人!");
                }

3.修改(修改数据)

System.out.println("请输入需要修改的学生id:");
                int xgid= sc.nextInt();
                System.out.println("请输入新的学生id:");
                int xid=sc.nextInt();
                System.out.println("请输入新的学生身高:");
                Double xhight= sc.nextDouble();
                System.out.println("请输入新的学生年龄:");
                int xage=sc.nextInt();
                System.out.println("请输入新的学生姓名:");
                String xname= sc.next();
                int i=statement.executeUpdate("UPDATE students SET id="+
                xid+",hight="+xhight+",age="+xage+",name='"+xname+"' WHERE  ID="+xgid);
                if (i!=0){
                    System.out.println("学生数据修改成功!");
                    }

4.查看(查看数据)

//执行封装结果
       	ResultSet r=statement.executeQuery("SELECT *FROM students");
       	for(;r.next();){
           System.out.println("学生id为;"+r.getInt("id"));
           System.out.println("学生身高为;"+r.getDouble("hight"));
           System.out.println("学生年龄为;"+r.getInt("age"));
           System.out.println("学生姓名为;"+r.getString("name"));
           }

总体代码

package 链接数据库的增删改查;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
public class Demo {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        Class.forName("com.mysql.jdbc.Driver");
        Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db1", "root", "123456");
        Statement statement = con.createStatement();
        for(;;){
            System.out.println("欢迎进入学生管理系统!");
            System.out.println("1.添加学生数据");
            System.out.println("2.删除学生数据");
            System.out.println("3.修改学生数据");
            System.out.println("4.查看学生数据");
            System.out.println("5.退出学生管理系统");
            System.out.println("*****请选择1~5*****");
            int num = sc.nextInt();
            if (num == 1) {
                System.out.print("请输入需要添加的学生id:");
                int tid= sc.nextInt();
                System.out.print("请输入需要添加的学生身高:");
                Double thight= sc.nextDouble();
                System.out.print("请输入需要添加的学生年龄:");
                int tage=sc.nextInt();
                System.out.print("请输入需要添加的学生姓名:");
                String tname= sc.next();
                int i=statement.executeUpdate("INSERT INTO students " +
                        "VALUES (" + tid + "," + thight + "," + tage + ",'" + tname + "')");
                if (i!=0) {
                    System.out.println("添加数据成功!");
                }
            } else if (num == 2) {
                System.out.println("请输入需要删除的学生id:");
                int sid= sc.nextInt();
                int i=statement.executeUpdate("DELETE from students where id="+sid);
                if (i!=0){
                    System.out.println("删除数据成功!");
                }if (i==0){
                    System.out.println("学生系统无此人!");
                }
            } else if (num == 3) {
                System.out.print("请输入需要修改的学生id:");
                int xgid= sc.nextInt();
                System.out.print("请输入新的学生id:");
                int xid=sc.nextInt();
                System.out.print("请输入新的学生身高:");
                Double xhight= sc.nextDouble();
                System.out.print("请输入新的学生年龄:");
                int xage=sc.nextInt();
                System.out.print("请输入新的学生姓名:");
                String xname= sc.next();
                int i=statement.executeUpdate("UPDATE students SET id="+xid+",hight="+xhight+",age="+xage+
                        ",name='"+xname+"' WHERE  ID="+xgid);
                if (i!=0){
                    System.out.println("学生数据修改成功!");
                }
            } else if (num == 4) {
                //执行封装结果
                ResultSet r=statement.executeQuery("SELECT *FROM students");
                for(;r.next();){
                    System.out.println("学生id为;"+r.getInt("id"));
                    System.out.println("学生身高为;"+r.getDouble("hight"));
                    System.out.println("学生年龄为;"+r.getInt("age"));
                    System.out.println("学生姓名为;"+r.getString("name"));
                }
            } else if (num == 5) {
                System.out.println("退出学生管理系统成功!");
                System.exit(1);
            } else{
                System.out.println("指令有误,请检查后重新输入!");
            }
        }
    }
}

在这里插入图片描述此数据管理系统已连上数据库,他的数据每次结束都会被保留!
今天到此为止

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我头像真的只是只猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值