
Security News
Software Engineering Daily Podcast: Feross on AI, Open Source, and Supply Chain Risk
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.
aloha-mysql-query-builder
Advanced tools
Aloha MySQL Query Builder 是一个 Python 库,用于简化 MySQL 查询的构建,支持构建常见的 SQL 查询语句,包括 SELECT、INSERT、UPDATE、DELETE 等。该库提供了一个简洁的 API,使得在 Python 中构建和执行 MySQL 查询变得更加方便。
SELECT, INSERT, UPDATE, DELETE 等常见 SQL 查询类型。WHERE, ORDER BY, GROUP BY, LIMIT 等 SQL 子句。IF EXISTS)。SELECT ONE)。你可以通过 pip 安装 Aloha MySQL Query Builder:
pip install aloha-mysql-query-builder
from aloha_mysql.query_builder import AlohaQueryBuilder
query = AlohaQueryBuilder('users')
query = query.select('id', 'name').where('age', '>', 18)
sql = str(query)
print(sql) # 输出: SELECT id, name FROM users WHERE age > '18'
query = AlohaQueryBuilder('users')
query = query.insert(id=1, name='John', age=30)
sql = str(query)
print(sql) # 输出: INSERT INTO users (id, name, age) VALUES ('1', 'John', '30')
query = AlohaQueryBuilder('users')
query = query.update(name='John Doe', age=31).where('id', '=', 1)
sql = str(query)
print(sql) # 输出: UPDATE users SET name = 'John Doe', age = '31' WHERE id = '1'
query = AlohaQueryBuilder('users')
query = query.delete().where('age', '<', 18)
sql = str(query)
print(sql) # 输出: DELETE FROM users WHERE age < '18'
query = AlohaQueryBuilder('users')
query = query.insert_batch(
['id', 'name', 'age'], # 明确列名
[(1, 'Alice', 22), (2, 'Bob', 24)]
)
sql = str(query)
print(sql) # 输出: INSERT INTO users (id, name, age) VALUES ('1', 'Alice', '22'), ('2', 'Bob', '24')
query = AlohaQueryBuilder('users')
query = query.update_batch(
{'name': 'John Doe', 'age': 31},
'id',
[1, 2, 3]
)
sql = str(query)
print(sql) # 输出: UPDATE users SET name = 'John Doe', age = '31' WHERE id IN ('1', '2', '3')
query = AlohaQueryBuilder('users')
query = query.select('id', 'name').where('age', '>', 18).order_by('age', 'DESC')
sql = str(query)
print(sql) # 输出: SELECT id, name FROM users WHERE age > '18' ORDER BY age DESC
query = AlohaQueryBuilder('users')
query = query.select('age', 'COUNT(*)').group_by('age')
sql = str(query)
print(sql) # 输出: SELECT age, COUNT(*) FROM users GROUP BY age
query = AlohaQueryBuilder('users')
query = query.select('id', 'name').limit(10)
sql = str(query)
print(sql) # 输出: SELECT id, name FROM users LIMIT 10
select_one 方法query = AlohaQueryBuilder('users')
query = query.select_one().select('id', 'name').where('id', '=', 1)
sql = str(query)
print(sql) # 输出: SELECT id, name FROM users WHERE id = '1' LIMIT 1
if_exist 方法query = AlohaQueryBuilder('users')
query = query.if_exist('age > 18')
sql = str(query)
print(sql) # 输出: IF EXISTS (SELECT 1 FROM users WHERE age > 18)
运行 pytest 来执行单元测试:
pytest tests/
欢迎提交 Issues 或 Pull Requests,参与改进本项目。
Aloha MySQL Query Builder 使用 MIT 许可证。详细信息请参阅 LICENSE 文件。
FAQs
A MySQL query builder for Python
We found that aloha-mysql-query-builder demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.

Security News
GitHub has revoked npm classic tokens for publishing; maintainers must migrate, but OpenJS warns OIDC trusted publishing still has risky gaps for critical projects.

Security News
Rust’s crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.