欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 明星 > SQL基础——python和java连接MySQL数据库

SQL基础——python和java连接MySQL数据库

2024/10/24 21:30:40 来源:https://blog.csdn.net/m0_66890670/article/details/141706394  浏览:    关键词:SQL基础——python和java连接MySQL数据库

简介:个人学习分享,如有错误,欢迎批评指正。

Python 连接 MySQL 数据库

Python 连接 MySQL 数据库的常用方法包括使用 mysql-connector-python、PyMySQL 和 SQLAlchemy。以下是每种方法的简单示例:

1. 使用 mysql-connector-python

import mysql.connector# 建立连接
conn = mysql.connector.connect(host="localhost",user="your_username",password="your_password",database="your_database"
)# 创建游标对象
cursor = conn.cursor()# 执行查询
cursor.execute("SELECT * FROM your_table")# 获取结果
results = cursor.fetchall()# 关闭游标和连接
cursor.close()
conn.close()# 打印结果
for row in results:print(row)

2. 使用 PyMySQL

import pymysql# 建立连接
conn = pymysql.connect(host="localhost",user="your_username",password="your_password",database="your_database"
)# 创建游标对象
cursor = conn.cursor()# 执行查询
cursor.execute("SELECT * FROM your_table")# 获取结果
results = cursor.fetchall()# 关闭游标和连接
cursor.close()
conn.close()# 打印结果
for row in results:print(row)

3. 使用 SQLAlchemy

from sqlalchemy import create_engine# 创建引擎
engine = create_engine("mysql+pymysql://your_username:your_password@localhost/your_database")# 连接数据库并执行查询
with engine.connect() as conn:result = conn.execute("SELECT * FROM your_table")for row in result:print(row)

选择合适的连接方式

  • 如果需要一个轻量级的解决方案,可以使用 mysql-connector-python 或 PyMySQL。
  • 如果你需要 ORM(对象关系映射)功能或更复杂的数据库操作,SQLAlchemy 是一个更好的选择。

Java 连接 MySQL 数据库

JDBC概述
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API。JDBC是Java访问数据库的标准规范,可以为不同的关系型数据库提供统一访问,它由一组用Java语言编写的接口和类组成。

JDBC需要连接驱动,驱动是两个设备要进行通信,满足一定通信数据格式,数据格式由设备提供商规定,设备提供商为设备提供驱动软件,通过软件可以与该设备进行通信。

在这里插入图片描述

JDBC入门案例

JDBC核心类和接口

  • DriverManager:用于注册驱动
  • Connection: 表示与数据库创建的连接
  • Statement/PrepareStatement: 操作数据库sql语句的对象
  • ResultSet: 结果集或一张虚拟表

执行流程

在这里插入图片描述

1. 添加 MySQL JDBC 驱动程序

首先,确保你已经添加了 MySQL JDBC 驱动程序到你的项目中。你可以在 Maven 项目中通过添加以下依赖来实现:

<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.30</version>
</dependency>

如果你不是使用 Maven 项目,你需要手动下载 mysql-connector-java 的 .jar 文件并将其添加到项目的类路径中。

2. 使用 JDBC 连接 MySQL 数据库

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.SQLException;public class MySQLConnection {public static void main(String[] args) {// 数据库连接参数String url = "jdbc:mysql://localhost:3306/your_database";String username = "your_username";String password = "your_password";Connection conn = null;Statement stmt = null;try {// 1. 注册 JDBC 驱动Class.forName("com.mysql.cj.jdbc.Driver");// 2. 打开连接conn = DriverManager.getConnection(url, username, password);// 3. 执行查询stmt = conn.createStatement();String sql = "SELECT * FROM your_table";ResultSet rs = stmt.executeQuery(sql);// 4. 处理查询结果while (rs.next()) {// 例如获取列名为 'id' 的数据int id = rs.getInt("id");String name = rs.getString("name");System.out.println("ID: " + id + ", Name: " + name);}// 5. 关闭 ResultSet 和 Statementrs.close();stmt.close();conn.close();} catch (SQLException se) {// 处理 JDBC 错误se.printStackTrace();} catch (Exception e) {// 处理 Class.forName 错误e.printStackTrace();} finally {// 关闭资源try {if (stmt != null) stmt.close();} catch (SQLException se2) {}try {if (conn != null) conn.close();} catch (SQLException se) {se.printStackTrace();}}}
}

结~~~

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com