【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)
# # --------------------------------------------------------
相关推荐
懂点Tech31 分钟前
ctfshow misc28:GIF 高度修改解题与脚本实现
开发语言·windows·python
comedate1 小时前
SMLib 的 Examples 导读:PyAPI / SM_API / SMLib 三组示例怎么读
python·cad·smlib·examples·sm_api
云和数据.ChenGuang1 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
摇滚侠1 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 12
java·数据库·笔记
川石课堂软件测试1 小时前
学习软件测试需掌握的一些知识
数据库·python·sql·功能测试·网络协议·mysql·http
万化冥合2 小时前
PyBox屏幕键盘如何辅助演示键盘操作?
python·计算机外设
车软学堂2 小时前
从测试转开发,到底要补什么
网络·人工智能·python·功能测试·单片机·车载系统·自动化
天空依然蔚蓝2 小时前
分享一个自动检测网站在线状态的python程序
python·运维开发·1024程序员节
2501_937767162 小时前
自建 SQL 数据库定时备份踩坑复盘与落地思路
数据库·sql
岁月宁静3 小时前
一个 AI 项目从本地到上线,要经过哪些步骤?全流程讲清楚
python·docker·agent