目录
1.连接数据库
1.1.下载驱动包
1.2:连接数据库
2.jdbc编程
2.1:何为jdbc
2.2:jdbc的使用。
2.2.1:直接插入操作
2.2.2:利用?进行插入
2.2.3:修改操作
2.2.4:删除操作
2.2.5:查找操作
前言:前一篇我们讲了什么是数据库的事务和索引。接下来,我们要了解一下如何在idea连接数据库,并进行jdbc的编程。
1.连接数据库
连接数据库需要先下载一个mysql提供java的驱动包mysql-connector-java
首先需要下载一个驱动包
1.1.下载驱动包
下载地址:
https://mvnrepository.com/
1.先在热门类型找到jdbc驱动程序并点击
2.点击连接器
3.找到和自己mysql相适应的驱动包并点击,我的mysql是5.7。
之后大致在一个版本就可以,不用精确到莫个版本的第几代。
4.下载
1.2:连接数据库
1.找到驱动包下载到哪里,并将这个驱动包复制。
2.在idea建立一个lib 包并将这个驱动包粘贴进去。
3.建立依赖
1.3:检验数据库是否连接成功
characterEncoding=utf8是设置你的字符集是utf8.
useSSL=false:关闭保密功能。
2.jdbc编程
2.1:何为jdbc
jdbc就是Java数据库连接,是一种用于执行SQL语句的java Api,是java中的数据库连接规范。
可以为多种关系数据库提供统一接口,jdbc为多种关系数据库提供了统一的访问方式,使程序的可移植性大大增加。
2.2:jdbc的使用。
jdbc的增加,修改,删除都是都是调用executeupdate()来执行的。
jdbc的查找是调用executeQuery()来执行的。并且查找返回的是一个结果集。
关闭资源的操作和打开资源的操纵顺组是相反的。
1.首先要和数据库建立连接。
2.你进行修改,查询和删除的表,首先要在数据库存在。
2.2.1:直接插入操作
//从键盘中输入学号3 ,姓名:琪琪,数学 78,语文90 英语 72.5
System.out.println("请输入学号,数,语,英三门成绩,姓名");
Scanner scan=new Scanner(System.in);
int id=scan.nextInt();
double math=scan.nextDouble();
double chinese=scan.nextDouble();
double english=scan.nextDouble();
String name=scan.next();
//编写sql语句
String sql = "insert into student values(" + id +",'"+name +"', " +math+"," +chinese+"," +english+")";
PreparedStatement statement= connection.prepareStatement(sql);
//sql语句的 增 删 改的语句都是通过executeUpdate()来执行的
int row= statement.executeUpdate();
System.out.println(row);
//关闭连接
statement.close();
connection.close();
}
}
2.2.2:利用?进行插入
//String sql = "insert into student values(" + id +",'"+name +"', " +math+"," +chinese+"," +english+")";
String sql = "insert into student values(?, ?, ?, ?, ?)";
PreparedStatement statement= connection.prepareStatement(sql);
statement.setInt(1,id);//id是int,是第一个?代替的。
statement.setString(2,name);
statement.setDouble(3,math);
statement.setDouble(4,chinese);
statement.setDouble(5,english);
第一个?的位置是1,依次类推,根据你要代替?的数据类型选择setString StringInt----
第一个参数是第几个?,第二个参数,是你想代替的数据。
2.2.3:修改操作
//连接数据库
Connection connection= dataSource.getConnection();
//SQL语句
String sql="update student set name='琪琪' where name='qiqi'";
PreparedStatement statement= connection.prepareStatement(sql);
int row= statement.executeUpdate();
//关闭。如同栈一般,先开后关
statement.close();
connection.close();
2.2.4:删除操作
//连接数据库
Connection connection= dataSource.getConnection();
//SQL语句
String sql="delete from student where name='甜甜'";
PreparedStatement statement= connection.prepareStatement(sql);
int row = statement.executeUpdate();
//关闭资源
statement.close();
connection.close();
2.2.5:查找操作
查找操作返回的是一个结果集。我们这里用while循环将结果集进行打印出来。
next 相当于移动一下光标, 光标指向下一行. 然后移动到结尾, 就返回 false
使用 getXX() 方法获取到每一列 ,括号里面的是你想查询表的列名。返回的是你获取此列的数据。
//连接数据库
Connection connection= dataSource.getConnection();
//执行SQL语句
String sql="select * from student where math>80";
PreparedStatement statement= connection.prepareStatement(sql);
ResultSet set= statement.executeQuery();
while(set.next()){
int id= set.getInt("id");
String name=set.getString("name");
double math= set.getDouble("math");
double chinese= set.getDouble("chinese");
double english= set.getDouble("english");
System.out.println(id+" "+name+" "+math+" "+chinese+" "+english+" ");
}
//关闭资源
statement.close();
connection.close();
}
总结:
以上就是我总结的jdbc的使用,若有不对之处,请各位铁子留言纠错,若感觉不错,请一键三连。