Python代码操作MySQL数据库怎么创建类
时间: 2025-06-28 10:22:28 浏览: 2
### Python 类操作 MySQL 数据库示例
为了实现一个用于操作 MySQL 数据库的 Python 类,可以创建名为 `MySQLDatabase` 的类。此类封装了连接到数据库、执行 SQL 查询和其他常用功能的方法。
#### 创建 MySQLDatabase 类
下面是一个简单的例子:
```python
import mysql.connector
from mysql.connector import Error
class MySQLDatabase:
def __init__(self, host_name, user_name, user_password, db_name):
connection = None
try:
connection = mysql.connector.connect(
host=host_name,
user=user_name,
passwd=user_password,
database=db_name
)
print("MySQL Database connection successful")
except Error as err:
print(f"Error: '{err}'")
self.connection = connection
def execute_query(self, query, vals=None):
cursor = self.connection.cursor()
try:
if vals:
cursor.execute(query, vals)
else:
cursor.execute(query)
self.connection.commit()
print("Query executed successfully")
except Error as e:
print(f"The error '{e}' occurred")
def read_query(self, query):
cursor = self.connection.cursor()
result = None
try:
cursor.execute(query)
result = cursor.fetchall()
return result
except Error as e:
print(f"The error '{e}' occurred")
db = MySQLDatabase('localhost', 'root', 'password', 'test_db')
create_table_query = """
CREATE TABLE IF NOT EXISTS users (
id INT AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
age INT,
PRIMARY KEY (id)
) ENGINE = InnoDB;
"""
insert_user_query = "INSERT INTO users (name, age) VALUES (%s, %s)"
users_data = [
('John Doe', 30),
('Jane Smith', 28)
]
for user in users_data:
db.execute_query(insert_user_query, user)
select_users_query = "SELECT * FROM users"
rows = db.read_query(select_users_query)
print(rows)
```
此代码段定义了一个 `MySQLDatabase` 类,该类接受主机名、用户名、密码和数据库名称作为参数并尝试建立连接[^1]。此外还提供了两个方法:一个是用来执行写入类型的查询(如插入、更新或删除),另一个则是读取数据表中的记录。
阅读全文
相关推荐













