Java傻瓜式学习第十一天
昨日内容
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)
代码:
- 加载内存--------Class.forName(“”)
- 获取链接--------Connection con=DriverManager.getconnection(url,user,password)
- 获取执行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("指令有误,请检查后重新输入!");
}
}
}
}
此数据管理系统已连上数据库,他的数据每次结束都会被保留!
今天到此为止