用eclipse连接MySQL数据库,实现数据库的CRUD 操作

本文详细介绍了如何在Java项目中通过MySQLconnector实现MySQL数据库的连接,包括下载和配置jar文件,创建数据库连接,执行插入、更新、删除和查询操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.在MySQL官网上下载MySQL connector zip文件。

下载链接

选择操作的系统为: platform Independent

下载zip文件,下载完成后,解压压缩包,放在容易找到的地方即可。我这里放到了D盘的MySQL文件夹内。

2.创建项目

打开eclips,新建一个Java项目命名为MysqlConnect,再在包里创建一个类,也可以命名为mysqlconnect(当然命名可以由你自己任意决定)。

3.导入jar文件,并将其添加到类库。

在项目中新建一个文件夹,命名为lib,选择解压的zip文件中后缀名为.jar的文件复制到lib文件夹中。在lib中会显示一个.jar文件。

右键项目名,选择Build Path,点击Configure Build Path...

进去之后,点击最上面列表里的Libraries,点击右边的 Add JARs...,打开你创建的包,点击lib下的.jar文件,点击ok,这样就添加了.jar文件,并将其添加到类库中了。

最后在你的项目下面会生成这样一个类库。

4.创建数据库连接。

package mysqlconnect;

import java.sql.*;

public class mysqlconnect {
	public static void main(String[] args) throws ClassNotFoundException {
        
*//mysql5写法:com.mysql.jdbc.Driver,不需要.cj*
*//mysql8写法:com.mysql.cj.jdbc.Driver*

		String driver = "com.mysql.cj.jdbc.Driver";
		String url = "jdbc:mysql://localhost:3306/connect";

*//String url = "jdbc:数据库类型://localhost:端口/数据库名字";*
		String username = "root";
		String password = "你的数据库密码";		
try {
		//1.加载驱动
		Class.forName(driver);
		//2.创建连接
		Connection connection = DriverManager.getConnection(url, username, password);
		System.out.println("连接成功!" + connection);
	} catch (Exception e) {
		e.printStackTrace();
	}
	
}
}

如何查找自己的端口号,navicat中可以连接数据库后查看

5.执行CRUD操作。

在执行操作之前,我们需要创建一个数据库空表,以《数据库系统概论》书上第二章课后习题的供应商表为例。

插入操作

在eclipse中连接数据库后,写入插入的SQL语句,执行SQL,执行完后关闭,释放资源。用row 记录插入的行数记录。

	try {
			//1.加载驱动
			Class.forName(driver);
			//2.创建连接
			Connection connection = DriverManager.getConnection(url, username, password);
			//3.创建statement;执行SQL
			Statement statement = connection.createStatement();
			//4.执行SQL
			String sql = "insert S values('S1','精益','20','天津'),('S2','盛锡','10','北京'),('S3','东方红','30','北京'),('S4','丰泰盛','30','北京'),('S5','为民','30','上海')";
			int rows = statement.executeUpdate(sql);
			System.out.println(">>>>rows:" + rows);
			//5.关闭 释放资源
			statement.close();
			connection.close();
			
		} catch (Exception e) {	
			e.printStackTrace();
		} 

在MySQL中输入查询命令,运行结果如下:

更新操作

将供应商代码为S1的供应商所在城市由天津更新为江西

try {
			//1.加载驱动
			Class.forName(driver);
			//2.创建连接
			Connection connection = DriverManager.getConnection(url, username, password);
			//3.创建statement;执行SQL
			Statement statement = connection.createStatement();
			//4.执行SQL
			String sql = "update S set CITY = '江西' where  SNO = 'S1'";
			int rows = statement.executeUpdate(sql);
			System.out.println(">>>>rows:" + rows);
			//5.关闭 释放资源
			statement.close();
			connection.close();
			
		} catch (Exception e) {	
			e.printStackTrace();
		} 

在MySQL中查询更新后的数据:

删除操作

删除代理商代码为S1的数据

try {
		//1.加载驱动
		Class.forName(driver);
		//2.创建连接
		Connection connection = DriverManager.getConnection(url, username, password);
		//3.创建statement;执行SQL
		Statement statement = connection.createStatement();
		//4.执行SQL
		String sql = "delete from S where  SNO = 'S1'";
		int rows = statement.executeUpdate(sql);
		System.out.println(">>>>rows:" + rows);
		//5.关闭 释放资源
		statement.close();
		connection.close();
		
	} catch (Exception e) {	
		e.printStackTrace();
	} 

运行结果如下:

查询操作

查询操作与插入、更新、删除有所不同,需要遍历每一个组件,利用游标,获取当前游标指向的记录数据,利用while循环打印下来。

try {
				//1.加载驱动
				Class.forName(driver);
				//2.创建连接
				Connection connection = DriverManager.getConnection(url, username, password);
				//3.创建statement;执行SQL
				Statement statement = connection.createStatement();
				//4.执行SQL, 返回结果集Resultset
				String sql = "select SNO,SNAME,STATUS,CITY from S";
				ResultSet resultSet = statement.executeQuery(sql);
				//5.遍历结果
				while(resultSet.next()) 
				{
					String SNO = resultSet.getString(1);//获取第一列
					String SNAME = resultSet.getString(2);
					String STATUS = resultSet.getString(3);
					String CITY = resultSet.getString(4);
					System.out.println(SNO + "  " + SNAME + "  " + STATUS + "  " + CITY);
				}
				//6.关闭 释放资源
			resultSet.close();
			statement.close();
			connection.close();
			
		} catch (Exception e) {	
			e.printStackTrace();
		} 

代码运行结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值