Registry / database / jinjasql2

jinjasql2

JSON →
library0.1.12pypypi✓ verified 91d ago

Generate SQL queries and corresponding bind parameters using Jinja2 templates. Version 0.1.12 is the latest, with recent security upgrades and removal of older Python support. Release cadence is irregular, primarily for bug fixes and security updates.

pip install jinjasql2
INSTALL
IMPORT
SIG · JINJASQL2
J
jinjasql2
databasepythonv0.1.12
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

JinjaSql
✓ from jinjasql import JinjaSql
✗ from jinjasql2 import JinjaSql
The package name is 'jinjasql2' but the module is 'jinjasql'.

Basic usage: create a JinjaSql instance, pass a Jinja template and parameters, get SQL and bind parameters.

from jinjasql import JinjaSql j = JinjaSql(param_style='named') template = "SELECT * FROM mytable WHERE id = {{ id }}" query, bind_params = j.prepare_query(template, {'id': 10}) print(query) # SELECT * FROM mytable WHERE id = :id print(bind_params) # {'id': 10}
Debug
Known issues
breakingVersion 0.1.10 dropped support for Python 3.6 and lower. Use Python 3.7+.
fix
Upgrade Python to 3.7 or later.
affects: >=0.1.10
gotchaThe package name is 'jinjasql2' but the import module is 'jinjasql'. Do not import from 'jinjasql2'.
fix
Use 'from jinjasql import JinjaSql'.
affects: all
deprecatedOld-style param_style 'format' and 'pyformat' may be deprecated. Use 'named' or 'qmark'.
fix
Set param_style='named' or 'qmark' to avoid issues.
affects: >=0.1.9
gotchaIdentifier clauses (e.g., dynamic table names) are only supported in version 0.1.9+. Using them in older versions will cause syntax errors.
fix
Upgrade to 0.1.9+ or avoid identifier syntax.
affects: <0.1.9
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'jinjasql2'
Importing from 'jinjasql2' instead of 'jinjasql'.
fix
Change import to 'from jinjasql import JinjaSql'.
jinjasql.exceptions.TemplateSyntaxError: Unexpected token '{{'
Using Jinja2 template syntax without binding parameters correctly, or using identifier clause in version <0.1.9.
fix
Ensure template syntax is correct and consider upgrading to 0.1.9+ for identifier support.
AttributeError: 'JinjaSql' object has no attribute 'prepare_query'
Using older API; 'prepare_query' was added in 0.1.8? Check docs.
fix
Use 'prepare_query' method; if it's missing, upgrade jinjasql2.
Upgrade
Version history
0.1.12latest on PyPI · released Apr 30, 2025
Audit
Dependencies
Jinja2requiredCore templating engine for query generation.
SQLAlchemyoptionalUsed for bind parameter handling (optional? check docs).
Agent activity
6 hits · last 30 days
node
4
Bingbot
1
Resources
jinjasql2 — pip install jinjasql2 · libregistry