使用 `mysql-connector-python`
`mysql-connector-python`是 MySQL 官方提供的用于 Python 的连接器。
import mysql.connector
try:
# 建立数据库连接
connection = mysql.connector.connect(
host="localhost",
user="your_username",
password="your_password",
database="your_database"
)
if connection.is_connected():
print("成功连接到数据库")
# 创建游标对象
cursor = connection.cursor()
# 执行查询语句
query = "SELECT * FROM your_table"
cursor.execute(query)
# 获取所有查询结果
results = cursor.fetchall()
for row in results:
print(row)
except mysql.connector.Error as err:
print(f"出现错误: {err}")
finally:
if 'cursor' in locals():
cursor.close()
if 'connection' in locals() and connection.is_connected():
connection.close()
print("数据库连接已关闭")
使用 `pymysql`
`pymysql`是一个纯 Python 实现的 MySQL 客户端库,使用起来也较为便捷。
import pymysql
try:
# 建立数据库连接
connection = pymysql.connect(
host="localhost",
user="your_username",
password="your_password",
database="your_database"
)
with connection.cursor() as cursor:
# 执行查询语句
query = "SELECT * FROM your_table"
cursor.execute(query)
# 获取所有查询结果
results = cursor.fetchall()
for row in results:
print(row)
except pymysql.Error as err:
print(f"出现错误: {err}")
finally:
if 'connection' in locals() and connection.open:
connection.close()
print("数据库连接已关闭")
代码说明
- **建立连接**:要把`your_username`、`your_password`、`your_database`、`your_table`替换成你自己数据库的用户名、密码、数据库名和表名。
- **执行查询**:运用`cursor.execute()`方法执行 SQL 查询语句。
- **获取结果**:使用`cursor.fetchall()`获取查询到的所有行。
- **异常处理**:采用`try-except`块来捕获并处理可能出现的数据库操作异常。
- **关闭连接**:操作完成后,关闭游标和数据库连接以释放资源。