sqlite3简单使用

为什么要使用sqlite3?

sqlite3轻量简介,无需单独的数据库服务,只需访问磁盘上的.db的文件。在某些情况下很有用。

下面是一些简单的使用代码:

python 复制代码
import sqlite3
from uuid import uuid1

# 连接数据库文件,如果不存在会创建
with sqlite3.connect('./db/wav2lip.db') as conn:
    # 创建一个游标对象
    cursor = conn.cursor()

    # IF NOT EXISTS会阻止重复创建表
    cursor.execute('''
        CREATE TABLE IF NOT EXISTS wav2lip (
            id INTEGER PRIMARY KEY,
            uuid TEXT NOT NULL,
            flag INTEGER NOT NULL,
            oss TEXT)
        ''')

    # cursor.executemany()  插入多条数据
    cursor.execute('''INSERT INTO wav2lip (uuid, flag) VALUES (?, ?)''', (str(uuid1()), 0))

    # 更新某个字段的值
    cursor.execute('''UPDATE wav2lip SET flag = ? WHERE uuid = ? ''',(1, 'f5bcc0da-82b2-11ee-9328-acde48001122'))

    # 提交更改
    conn.commit()

    # 从表中查全部数据
    results = cursor.execute(''' SELECT * FROM wav2lip''')
    for result in results:
        print(result)
        print(result[1])

    # 从表中根据条件查数据
    results = cursor.execute(''' SELECT * FROM wav2lip WHERE uuid = ?''', ('f5bcc0da-82b2-11ee-9328-acde48001122',))
    for result in results:
        print(result)

    # 使用with不需要conn.close()了
相关推荐
AwhiteV2 分钟前
利用图数据库高效解决 Text2sql 任务中表结构复杂时占用过多大模型上下文的问题
数据库·人工智能·自然语言处理·oracle·大模型·text2sql
m0_5951998524 分钟前
Redis(以Django为例,含具体操作步骤)
数据库·redis·缓存
爱尚你199331 分钟前
MySQL 三大日志:redo log、undo log、binlog 详解
数据库·mysql
小猿姐2 小时前
KubeBlocks AI:AI时代的云原生数据库运维探索
数据库·人工智能·云原生·kubeblocks
NocoBase3 小时前
10 个开源工具,快速构建数据应用
数据库·低代码·开源
麻辣清汤4 小时前
结合BI多维度异常分析(日期-> 商家/渠道->日期(商家/渠道))
数据库·python·sql·finebi
Kan先生5 小时前
对象存储解决方案:MinIO 的架构与代码实战
数据库·python
超级迅猛龙5 小时前
保姆级Debezium抽取SQL Server同步kafka
数据库·hadoop·mysql·sqlserver·kafka·linq·cdc
杨过过儿6 小时前
【Task02】:四步构建简单rag(第一章3节)
android·java·数据库
····懂···7 小时前
攻克PostgreSQL专家认证
数据库·postgresql