Flask Shell 操作 SQLite

一、前言

这段时间在玩Flask Web,发现用Flask Shell去操作SQLite还是比较方便的。今天简单地介绍一下。

二、SQLite

SQLite是一种嵌入式数据库,它的数据库就是一个文件,处理速度快,经常被集成在各种应用程序中,在IOS和Android开发中会用SQLite做为客户端缓存数据使用。在Android中继承SQLiteOpenHelper类去实现对SQLite的操作,这里我们不具体讲了,Android现在除了大厂外小公司基本上很少开发Android原生应用了。SQLite支持三种线程模型单线程、多线程、以及串行这个可以代码中配置,单线程模型时并发使用时会出问题,多线程模型时一个数据库连接不被多个线程同时使用就是安全的,串行会启用所有锁是线程安全的。

我们先在Python交互模式下操作SQLite。

创建表并插入一条数据

注:因为python3内置了sqlite3,直接导入sqlite驱动,然后创建连接,打开游标即可创建表及写增删改查SQL.会在当前目录下生成一个test.db文件,你可以用DBeaver数据库管理工具创建到该文件的连接,打开后与打开MySQL差不多,可以写常规的SQL语句去维护。

查询数据

三、Flask Shell

dbtest.py

配置环境export FLASK_APP=dbtest.py

SQLAlchemy是Python的一种ORM框架,通过定义模型对象,然后进入Flask Shell中执行db.create_all()能够根据模型直接创建所有表,drop_all()删除所有表。

然后导入用户及角色对象,通过交互命令提交数据。

打开data.sqlite,数据已经写入数据库。

相关推荐
AI情绪识别开源12 小时前
检信ALLEMOTION VibrationAI 2.4.0 12维度情绪识别开源源代码
开发语言·python
极创信息13 小时前
国产化信创适配认证高频术语:信创适配、软件自主可控、国产化率、代码溯源率、代码自主率、代码开源率是什么?
java·python·struts·eclipse·开源·php·hibernate
AC赳赳老秦13 小时前
语义采集进阶实战:利用 OpenClaw AI 语义识别自动提取网页核心信息,无需手动编写选择器
java·运维·服务器·python·信息可视化·deepseek·openclaw
Logintern0913 小时前
什么时候应该用多进程什么时候用多线程呢?
开发语言·python
无凭14 小时前
字节跳动 DeerFlow:Agent Harness 怎么让大模型主动向用户提问?
人工智能·python
蜀道山老天师14 小时前
Python + Playwright 实现问卷星自动化填写
python
Zane199414 小时前
多开几个线程,为什么算数字反而没变快?一文讲透 CPython 的 GIL
后端·python
W_3260014 小时前
Python-OpenCV边缘检测与阈值分割:Sobel、Scharr、Laplacian、Canny、全局与自适应阈值
开发语言·图像处理·python·opencv·机器学习
青 春 记 忆15 小时前
LeetCode 121. 买卖股票的最佳时机|Python 解法详解
python·算法·leetcode
En^_^Joy15 小时前
Django模板与静态文件使用指南
python·django·sqlite