高效率的开源工具:在python操作简洁的sql代码(开源 sql)

更多互联网新鲜资讯、工作奇淫技巧关注原创【飞鱼在浪屿】(日更新)


SQL语句是代码,可以编写,对其进行版本控制,对其进行注释并使用文件保存运行它。如果在Python程序中以字符串形式编写SQL代码不会使你轻松在数据库GUI工具或CLI工具(如psql)中重用SQL语句。而使用aiosql(地址:https://github.com/nackjicholson/aiosql),可以将SQL语句组织为.sql文件,将它们作为加载到python应用程序中,SQL还是以文件形式保存。

aiosql适用于的场景有:

  • 你认为编写SQL是应用程序的重要组成部分,希望以文件保存。
  • 不想用与Python代码混合编写SQL。
  • 没有使用像SQLAlchemy或Django这样的ORM,也不需要。
  • 希望能够在其他上下文中重用您的SQL。将其加载到psql或其他数据库工具中。

安装

pip install aiosql

或者使用poetry管理工具:

poetry add aiosql


高效率的开源工具:在python操作简洁的sql代码(开源 sql)

使用方法

假设您有一个SQL文件,如下所示: users.sql

-- name: get-all-users-- Get all user recordsselect userid, username, firstname, lastname from users;-- name: get-user-by-username^-- Get user with the given username field.select userid, username, firstname, lastname from users where username = :username;

使用aiosql加载此文件,然后在文件中编写SQL并从python中的方法执行!:

import aiosqlimport sqlite3conn = sqlite3.connect("myapp.db")queries = aiosql.from_path("users.sql", "sqlite3")users = queries.get_all_users(conn)# >>> [(1, "nackjicholson", "William", "Vaughn"), (2, "johndoe", "John", "Doe"), ...]users = queries.get_user_by_username(conn, username="nackjicholson")# >>> (1, "nackjicholson", "William", "Vaughn")


高效率的开源工具:在python操作简洁的sql代码(开源 sql)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年1月18日 上午9:13
下一篇 2024年1月18日 上午9:29

相关推荐