技能 sqlite-ops
🗄️
了解 Python 项目中的 SQLite 数据库模式。包括连接管理、异步操作、迁移以及用于状态、缓存和事件日志的常见模式设计。
支援: Claude Codex Code(CC)
1
下載技能 ZIP
2
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
3
開啟並開始使用
測試它
正在使用「sqlite-ops」。 Show me how to use SQLite for caching in Python.
預期結果:
- Create a cache table with TTL:
- - Key column as PRIMARY KEY for fast lookups
- - Expires_at column with datetime values
- - Index on expires_at for cleanup queries
- Use INSERT with ON CONFLICT to upsert cached values
- Set TTL using datetime('now', '+1 hour') syntax
- Cleanup expired entries with: DELETE FROM cache WHERE expires_at < datetime('now')
安全審計
安全v3 • 1/10/2026
Pure documentation skill containing SQLite patterns. No executable code, network calls, or file system access. All content is reference material with code examples for user implementation.
4
已掃描檔案
900
分析行數
0
發現項
3
審計總數
未發現安全問題
審計者: claude 查看審計歷史 →
品質評分
45
架構
100
可維護性
81
內容
30
社群
100
安全
70
規範符合性
你能建構什麼
构建本地数据存储
在 Python 应用程序中实现本地 SQLite 数据库用于状态管理和缓存。
为服务器添加持久化
使用 SQLite 模式在模型上下文协议服务器中持久化数据。
处理异步数据库操作
在 Web 服务中应用异步模式进行并发数据库操作。
試試這些提示
基础连接
Show me how to connect to an SQLite database in Python with WAL mode and foreign keys enabled.
异步查询
Write async CRUD functions using aiosqlite for a Python project.
模式迁移
How do I create a migration system for SQLite that tracks version numbers?
性能调优
What patterns improve SQLite performance for concurrent reads and writes in production?
最佳實務
- 始终使用带 ? 占位符的参数化查询来防止 SQL 注入攻击。
- 使用 PRAGMA journal_mode=WAL 启用 WAL 模式以获得更好的并发读写性能。
- 使用上下文管理器或 try/finally 块确保连接正确关闭。
避免
- 不要将用户输入直接拼接到 SQL 字符串中——始终使用参数化查询。
- 对于具有并发访问的 Web 应用程序,不要使用 DELETE 日志模式。
- 不要跳过数据库操作(如锁定和约束冲突)的错误处理。
常見問題
哪些 Python 版本支持 sqlite3?
Python 3.8+ 标准库包含 sqlite3。在 Python 3.8+ 上使用 aiosqlite 提供异步支持。
最大数据库大小是多少?
SQLite 支持最大 281 TB 的数据库。实际限制取决于文件系统和可用磁盘空间。
可以与 FastAPI 或 Flask 一起使用吗?
可以。使用 WAL 模式实现并发,连接池处理高流量,以及使用上下文管理器处理请求作用域的连接。
断电时数据安全吗?
WAL 模式配合正确的检查点可以保护数据。考虑定期执行 VACUUM 以保持性能和完整性。
为什么会出现 'database is locked'?
默认的 DELETE 模式在写入时会阻塞读取。启用 WAL 模式以实现并发访问。保持事务简短。
这与 PostgreSQL 或 MySQL 相比如何?
SQLite 是无服务器的、零配置的,非常适合本地存储。PostgreSQL 和 MySQL 处理更高的并发和复制。