【sqlite】python操作sqlite3(含测试)

个人小项目或者小团队,sqllite很适用,数据库封装操作如下

python 复制代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2025-02-08 13:57
# @Author  : duxiaowei
# @File    : connect_sqllite.py
# @Software: PyCharm
"""
sqllite操作,
"""
import sqlite3

class DBlite():

    def __init__(self):
        self.conn = sqlite3.connect('X:\Tools\git\data\gitea.db')
        self.cursor = self.conn.cursor()
        # print("成功连接到数据库")

    # 查询
    def select(self, query):
        try:
            self.cursor.execute(query)
            # 获取所有查询结果
            results = self.cursor.fetchall()
            return results
        except sqlite3.Error as e:
            print("===>sqllite==【查询】==异常!", e)
        finally:
            self.cursor.close()
            self.conn.close()


    def change(self, *args, **kwargs):
        try:
            # 插入多行数据
            self.cursor.execute(*args, **kwargs)
            self.conn.commit()
            print("===>sqllite==【操作】==成功!")
        except sqlite3.Error as e:
            print("===>sqllite==【操作】==异常!", e)
        finally:
            self.cursor.close()
            self.conn.close()


# 查询所有用户
# select_query = "SELECT * FROM pytest_result where file_name='D:\\code\\python\\test_登录.py'"
# result = DBlite().select(select_query)
# print(result)
# # --------------------------------------------------------
# 插入数据
# students = [
#     ('D:\\code\\python\\test_登录5.py', 'test_aaa', 0, 1),
#     ('D:\\code\\python\\test_登录6.py', 'test_abb', 0, 1),
# ]
# for i in students:
#     sql = "INSERT INTO pytest_result (file_name, def_name, status, result) VALUES (?,?,?,?)"
#     DBlite().change(sql,i)

# # ---------------删除-----------------------------------------
# sql = "delete FROM pytest_result where file_name=?"
# arg = ['D:\\code\\python\\test_登录6.py']
# DBlite().change(sql, arg)
# # # --------------------------------------------------------
# sql = "UPDATE pytest_result SET status = 0 WHERE def_name = ?"
#
# arg = ['test_aac']
# DBlite().change(sql, arg)
# # --------------------------------------------------------
相关推荐
常利兵5 分钟前
Spring项目新姿势:Lambda封装Service调用,告别繁琐注入!
java·数据库·spring
智算菩萨29 分钟前
【OpenGL】10 完整游戏开发实战:基于OpenGL的2D/3D游戏框架、物理引擎集成与AI辅助编程指南
人工智能·python·游戏·3d·矩阵·pygame·opengl
liqianpin141 分钟前
MySQL官网驱动下载(jar包驱动和ODBC驱动)【详细教程】
数据库·mysql
kgduu1 小时前
js之客户端存储
javascript·数据库·oracle
light blue bird1 小时前
原生控件GDI完成作业协同界面
jvm·数据库·.net·winform·gdi+界面
聊点儿技术1 小时前
利用IP归属地查询识别异地登录风险:企业账号安全的技术探索
数据库·tcp/ip·安全
jason成都1 小时前
IoT 设备监控系统实战:基于 EMQX 的 MQTT 连接监控与数据格式指纹识别
开发语言·python
Ricky_Theseus2 小时前
SQL Server 的五种约束类型
数据库·sql·oracle
zjshuster2 小时前
数据库分库分表的方法论与实操
数据库·adb
愤豆2 小时前
05-Java语言核心-语法特性--模块化系统详解
java·开发语言·python