python1. 封装一个数据库操作类: 1. 类内部要求有一个函数能够实现通用的增删改查操作

动态 未结 0 80
小小草
小小草 LV1 2023年9月23日 23:40 发表
以下是一个简单的数据库操作类,其中包含了通用的增删改查操作: ```python import sqlite3 class Database: def __init__(self, db_name): self.db_name = db_name self.conn = sqlite3.connect(db_name) self.cursor = self.conn.cursor() def execute_query(self, query, params=None): try: if params: self.cursor.execute(query, params) else: self.cursor.execute(query) self.conn.commit() return True except Exception as e: print(f"Error executing query: {e}") return False def select(self, table, columns="*", where=None): query = f"SELECT {columns} FROM {table}" if where: query += f" WHERE {where}" self.cursor.execute(query) rows = self.cursor.fetchall() return rows def insert(self, table, values): placeholders = ",".join(["?" for _ in range(len(values))]) query = f"INSERT INTO {table} VALUES ({placeholders})" return self.execute_query(query, values) def update(self, table, set_values, where): set_clause = ",".join([f"{k} = ?" for k in set_values.keys()]) query = f"UPDATE {table} SET {set_clause} WHERE {where}" return self.execute_query(query, list(set_values.values())) def delete(self, table, where): query = f"DELETE FROM {table} WHERE {where}" return self.execute_query(query) def close(self): self.cursor.close() self.conn.close() ``` 这个类使用了Python内置的sqlite3模块来连接和操作数据库。在初始化时,我们传入数据库文件名,并创建了一个连接和游标对象。execute_query方法用于执行任意的SQL查询语句,可以是增删改查操作。select、insert、update和delete方法则分别对应了SELECT、INSERT、UPDATE和DELETE语句,并使用execute_query方法来执行。其中,select方法返回所有符合条件的行,而insert、update和delete方法则返回True或False表示操作是否成功。 这个类还提供了一个close方法,用于关闭连接和游标对象。在使用完毕
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复