【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)
# # --------------------------------------------------------
相关推荐
SelectDB17 分钟前
驾驭 CPU 与编译器:Apache Doris 实现极致性能的底层逻辑
运维·数据库·apache
zbguolei27 分钟前
MySQL根据身份证号码计算出生日期和年龄
数据库·mysql
cnxy1881 小时前
Python爬虫进阶:反爬虫策略与Selenium自动化完整指南
爬虫·python·selenium
马克学长1 小时前
SSM校园图书借阅服务系统jd2z8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·图书管理系统·ssm 框架·ssm 校园图书借阅系统
软件派1 小时前
高斯数据库使用心得——从性能优化到行业实践的深度解析
数据库·oracle
用户8356290780512 小时前
Python 实现 Excel 条件格式自动化
后端·python
Chan163 小时前
场景题:CPU 100% 问题怎么排查?
java·数据库·redis·后端·spring
深蓝电商API3 小时前
Scrapy管道Pipeline深度解析:多方式数据持久化
爬虫·python·scrapy
噎住佩奇3 小时前
(Win11系统)搭建Python爬虫环境
爬虫·python
电商API_180079052473 小时前
批量获取电商商品数据的主流技术方法全解析
大数据·数据库·人工智能·数据分析·网络爬虫