Python SQLite3数据库操作类分享
Python中操作SQLite数据库是一项重要的技能,在这里分享一种Python SQLite3数据库操作类的实现方法,方便大家在使用SQLite数据库时更加便捷。
SQLite3数据库介绍
SQLite是一个嵌入式的关系型数据库管理系统,特点是不需要独立的数据库服务器进程或操作系统,而是像其他应用程序库一样,以库的形式被链接到使用它的应用程序中。SQLite是在公有领域中发布的,遵守ACID事务,支持SQL语句,支持多用户并发操作。
SQLite3数据库操作类
下面是Python中操作SQLite3数据库的一个类:
import sqlite3
class Sqlite3Handler(object):
def __init__(self, db_file):
self.conn = sqlite3.connect(db_file)
self.cursor = self.conn.cursor()
def __del__(self):
self.cursor.close()
self.conn.close()
def execute(self, sql):
self.cursor.execute(sql)
self.conn.commit()
def fetch_all(self, sql):
self.cursor.execute(sql)
return self.cursor.fetchall()
def fetch_one(self, sql):
self.cursor.execute(sql)
return self.cursor.fetchone()
这个类具有以下几个方法:
__init__
: 构造函数,用于创建一个SQLite3数据库连接。__del__
: 此方法在对象被销毁时被调用,用于释放占用的数据库连接资源。execute
: 用于执行SQL语句,如增删改操作。fetch_all
: 获取所有的查询结果。fetch_one
: 获取一条查询结果。
示例说明
下面是使用上述SQLite3数据库操作类的两个示例:
创建表
import os
db_file = 'test.db'
if os.path.exists(db_file):
os.remove(db_file)
handler = Sqlite3Handler(db_file)
handler.execute('''CREATE TABLE PERSON
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL);''')
这个示例创建了一个名为PERSON的表,其中包含ID(主键)、NAME、AGE三个字段。
插入数据
handler.execute("INSERT INTO PERSON (ID, NAME, AGE) \
VALUES (1, 'John', 28)")
handler.execute("INSERT INTO PERSON (ID, NAME, AGE) \
VALUES (2, 'Mary', 25)")
这个示例插入了两条数据到PERSON表中,一条是ID为1的John,年龄为28,另一条是ID为2的Mary,年龄为25。
以上是Python SQLite3数据库操作类的一个实现方法,希望对大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python SQLite3数据库操作类分享 - Python技术站