当前位置:Gxlcms > 数据库问题 > Python编程之sqlite3数据库

Python编程之sqlite3数据库

时间:2021-07-01 10:21:17 帮助过:23人阅读

_*_ encoding: utf-8 _*_ # @Time: 2019-06-16 08:13 # @Author: Mocca3000 # @FileName: DBModel # @注释:本类对数据库操作进行封装,可以直接调用其中的函数 import sqlite3 class DBTool(object): def __init__(self): """ 初始化函数,创建数据库连接 """ self.conn = sqlite3.connect(Database/pos.db) self.c = self.conn.cursor() def execute_update(self, sql, ob): """ 数据库的插入、修改函数 :param sql: SQL语句 :param ob: 传入数据 :return: 返回数据库状态 """ try: self.c.executemany(sql, ob) i = self.conn.total_changes except Exception as e: print(错误类型:, e) return False finally: self.conn.commit() if i > 0: return True else: return False def execute_delete(self, sql, ob): """ 数据库数据删除函数 :param sql: SQL语句 :param ob: 传入数据 :return: 返回数据库状态 """ try: self.c.execute(sql, ob) i = self.conn.total_changes except Exception as e: return False finally: self.conn.commit() if i > 0: return True else: return False def execute_query(self, sql, ob): """ 数据库数据查询函数 :param sql: SQL语句 :param ob: 传入数据 :return: 返回查询数据结果 """ result = self.c.execute(sql, ob) return result def close(self): """ 关闭数据库的连接的函数 :return: """ self.c.close() self.conn.close()

调用就很简单了,直接传入SQL语句,以及数据就可以完成数据库操作,如下:

# _*_ encoding: utf-8 _*_
from Model.BDModel import DBTool


if __name__ == __main__:
    db = DBTool()
    sql = insert into stu (name, age) values (?, ?)
    name = input(请输入名称:)
    age = input(请输入年龄:)
    ob = [(name, age)]
    T = db.execute_update(sql, ob)
    if T:
        print(插入成功!)
    else:
        print(插入失败!)

假如数据库是新建的,则会出现没有数据表stu的错误提示,这个只需在封装类中加入如下代码及可:

        try:
            create_tb = ‘‘‘
            create table if not exists stu
            (name text,
            age int)
            ‘‘‘
            self.conn.execute(create_tb)
        except:
            print(创建表失败!)
            return False

到此,一个简单的数据库操作就完成啦

Python编程之sqlite3数据库

标签:ret   创建表   连接   创建数据库   into   新建   creat   port   nal   

人气教程排行