SQL Alchemy性能如果仅用于原始sql?

Dhr*_*hak 2 python django sqlalchemy mysql-python

我打算在Django项目中使用非常简单的原始SQL.例:

SELECT name,doc_id,doc_content,creation_date from doc_table where uid = 'xxx' limit 1 ;

主要要求:

  • 易于进行SQL查询和获取数据 - 例如.如果我使用MySQLdb,我不想重复通过游标进行查询,然后处理元组以获取所需数据的字典.

  • 防止SQL注入和正确的数据转义.

有两种选择,

a)使用SQLAlchemy,即使仅用于原始SQL.

b)使用在MySQLdb上编写的包装器,或者写一个.

我倾向于SQLAlchemy,因为我已经阅读了很多关于它的好东西.

如果我打算仅将它用于简单的原始SQL,那么使用SQLAlchemy会有任何显着的性能开销,例如CPU使用率,内存使用情况与更简单的MySQLdb包装器相比.所有其他SQLAlchemy电池都没有多大用处.

van*_*van 6

根据要求,发表评论作为答案:

请参阅答案为什么SQLAlchemy使用sqlite插入比直接使用sqlite3慢25倍?.虽然不是mysql,但Mike发布了一个性能测试示例代码,您可以使用mySQL将其应用于您的案例,并扩展到包括所有CRUD操作.从那里发布的结果中,我得出结论,当仅使用SQLAlchemy Core时,不应该有任何显着的性能下降.

如果仅用于原始SQL查询,还要查看SQLAlchemy的另一个SO答案吗?