将MySQL的jdbc驱动,导入IDEA的方式,虽然也能连接并且操作数据库,但并不推荐这种方式,推荐使用Maven工程的方式:
1、JDBC下载链接
2、选择下载内容,并进行下载
- 操作系统选择Platform Independent,下方列表中的两条记录,后缀tar.gz的是Linux版本,.zip的是windows版本。
- 这里下载windows版本的jdbc驱动,版本为8.0.18
- 跳过登录,直接点击红框里的内容,进行下载
3、将驱动导入java项目
- 在IDEA里面创建一个java项目
- 选择创建Java项目,JDK这里选择1.8,直接Next
- 勾选按模板创建,Next
- 输入项目名称和项目地址,Finish
- 项目创建完成的界面如下
- 在项目中建一个名为lib(名称建议就用lib)的文件夹
- 对之前下载来的zip文件进行解压(mysql-connector-java-8.0.18.jar ),并进入解压出来的文件夹
- 复制其中的mysql-connector-java-8.0.18.jar文件,在lib文件夹上右键,粘贴到IDEA中,刚刚新建的lib文件夹里
4、让导入的驱动生效
- 在IDEA中点击 File——Project Structure
- 其中的 Module 模块,Dependencies 选项卡
- 点击最右边的加号(+),选择 JARS or directories
- 在弹出的窗口中选择刚刚导入 lib 文件夹的驱动,点击Ok
- 可以看到Module模块中,多出了一个mysql驱动,最后点击Apply,然后Ok
5、注册数据库驱动,并向数据库内插入数据
- 在src下新建一个LinkDatabseInsert类
1 import java.sql.Connection;
2 import java.sql.DriverManager;
3 import java.sql.PreparedStatement;
4 import java.sql.SQLException;
5
6 public class LinkDatabseInsert{
7 public static void main(String[] args) throws ClassNotFoundException, SQLException {
8 //1.注册数据库的驱动
9 Class.forName("com.mysql.jdbc.Driver");
10 //2.获取数据库连接(里面内容依次是:"jdbc:mysql://主机名:端口号/数据库名","用户名","登录密码")
11 Connection connection = DriverManager.getConnection("jdbc:mysql://rm-uf6lgk4fdxego.mysql.rds.aliyuncs.com:3306/study","root","wY123!");
12 //3.需要执行的sql语句(?是占位符,代表一个参数)
13 String sql = "insert into stu(id,name,age) values(?,?,?)";
14 //4.获取预处理对象,并依次给参数赋值
15 PreparedStatement statement = connection.prepareCall(sql);
16 statement.setInt(1,11); //数据库字段类型是int,就是setInt;1代表第一个参数
17 statement.setString(2,"小明"); //数据库字段类型是String,就是setString;2代表第二个参数
18 statement.setInt(3,16); //数据库字段类型是int,就是setInt;3代表第三个参数
19 //5.执行sql语句(执行了几条记录,就返回几)
20 int i = statement.executeUpdate();
21 System.out.println(i);
22 //6.关闭jdbc连接
23 statement.close();
24 connection.close();
25 }
26 }
- 运行程序,返回1,说明成功向mysql数据库内插入一条数据
6、注册数据库驱动,并更新数据库内记录
- 在src下新建一个LinkDatabseUpdate类
1 import java.sql.Connection;
2 import java.sql.DriverManager;
3 import java.sql.PreparedStatement;
4 import java.sql.SQLException;
5
6 public class LinkDatabaseUpdate {
7 public static void main(String[] args) throws ClassNotFoundException, SQLException {
8 //1.注册数据库的驱动
9 Class.forName("com.mysql.jdbc.Driver");
10 //2.获取数据库连接(里面内容依次是:"jdbc:mysql://主机名:端口号/数据库名","用户名","登录密码")
11 Connection connection = DriverManager.getConnection("jdbc:mysql://rm-uf6lgk4fdxego.mysql.rds.aliyuncs.com:3306/study","root","wY123!");
12 //3.需要执行的sql语句(?是占位符,代表一个参数)
13 String sql = "update stu set name=?,age=? where id=?";
14 //4.获取预处理对象,并依次给参数赋值
15 PreparedStatement statement = connection.prepareCall(sql);
16 statement.setString(1,"小黄"); //数据库字段类型是String,就是setString;1代表第一个参数
17 statement.setInt(2,28); //数据库字段类型是int,就是setInt;2代表第二个参数
18 statement.setInt(3,10); //数据库字段类型是int,就是setInt;3代表第三个参数
19 //5.执行sql语句(执行了几条记录,就返回几)
20 int i = statement.executeUpdate();
21 System.out.println(i);
22 //6.关闭jdbc连接
23 statement.close();
24 connection.close();
25 }
26 }
- 运行程序,返回1,说明更新id为10的记录成功
7、注册数据库驱动,并删除数据库内记录
- 在src下新建一个LinkDatabseDelete类
1 import java.sql.Connection;
2 import java.sql.DriverManager;
3 import java.sql.PreparedStatement;
4 import java.sql.SQLException;
5
6 public class LinkDatabaseDelete {
7 public static void main(String[] args) throws ClassNotFoundException, SQLException {
8 //1.注册数据库的驱动
9 Class.forName("com.mysql.jdbc.Driver");
10 //2.获取数据库连接(里面内容依次是:"jdbc:mysql://主机名:端口号/数据库名","用户名","登录密码")
11 Connection connection = DriverManager.getConnection("jdbc:mysql://rm-uf6lgk4fdxego.mysql.rds.aliyuncs.com:3306/study","root","wY123!");
12 //3.需要执行的sql语句(?是占位符,代表一个参数)
13 String sql = "delete from stu where id=?";
14 //4.获取预处理对象,并依次给参数赋值
15 PreparedStatement statement = connection.prepareCall(sql);
16 statement.setInt(1,9); //字段类型是int,就是setInt;1代表第一个参数
17 //5.执行sql语句(执行了几条记录,就返回几)
18 int i = statement.executeUpdate();
19 System.out.println(i);
20 //6.关闭jdbc连接
21 statement.close();
22 connection.close();
23 }
24 }
- 运行程序,返回1,说明删除id为9的记录成功
8、注册数据库驱动,并查询数据库内记录
- 在src下新建一个LinkDatabseSelect类
1 import java.sql.*;
2
3 public class LinkDatabseSelect {
4 public static void main(String[] args) throws ClassNotFoundException, SQLException {
5 //1.注册数据库的驱动
6 Class.forName("com.mysql.jdbc.Driver");
7 //2.获取数据库连接(里面内容依次是:"jdbc:mysql://主机名:端口号/数据库名","用户名","登录密码")
8 Connection connection = DriverManager.getConnection("jdbc:mysql://rm-uf6lgk4fdxego.mysql.rds.aliyuncs.com:3306/study","root","wY123!");
9 //3.需要执行的sql语句(?是占位符,代表一个参数)
10 String sql = "select * from stu where id in(?,?)";
11 //4.获取预处理对象,并给参数赋值
12 PreparedStatement statement = connection.prepareStatement(sql);
13 statement.setInt(1,1); //字段类型是int,就是setInt;1代表第一个参数
14 statement.setInt(2,4); //字段类型是int,就是setInt;2代表第一个参数
15 //5.执行sql语句(返回结果集)
16 ResultSet resultSet = statement.executeQuery();
17 while(resultSet.next()){ //如果有下一条记录
18 String id = resultSet.getString("id"); //根据列名返回值
19 String name = resultSet.getString("name"); //根据列名返回值
20 int age = resultSet.getInt(3); //根据列的顺序返回值
21 String gender = resultSet.getString(4); //根据列的顺序返回值
22 System.out.println(id+"\t"+name+"\t"+age+"\t"+gender);
23 }
24 //6.关闭jdbc连接
25 resultSet.close();
26 statement.close();
27 connection.close();
28 }
29 }
- 运行程序,返回了两条记录,说明查询记录成功