Aid for writing boilerplate python code for SQL work, including creation of tables, insert functions, unit testing and SQL, dependent on relational database management system selected.
- Documentation: https://devtools-shorthand-sql.readthedocs.io.
Install the latest version of this software from the Python package index (PyPI):
pip install --upgrade devtools_shorthand_sql
Create a shorthand sql file e.g. shorthand.txt.
# photo
id,id
size,int
filename,text
date_taken,int
Run
devtools_shorthand_sql shorthand.txt
Notification that file created:
Info: Output saved to: shorthand_sql_created_functions.txt
Created file contains:
SQL statement for table creation:
CREATE TABLE IF NOT EXISTS photo (
id INTEGER PRIMARY KEY,
size INT,
filename TEXT,
date_taken INT
);
Python function for data insertion:
def insert_photo(id: int, size: int, filename: str, date_taken: int) -> int:
params = (id, size, filename, date_taken)
id = YOUR_CONNECTOR_EXECUTOR("""INSERT INTO photo (id, size, filename, date_taken) VALUES(?,?,?,?);""",
params)
return id
Python function for unit testing (pytest only):
def test_insert_photo(YOUR_CLEAN_DB_FIXTURE):
expected = (1, 160, '3RWL0C6QSU', 374)
new_id = YOUR_MODULE.insert_photo(size=160, filename="3RWL0C6QSU", date_taken=374)
result = YOUR_CONNECTOR_QUERY('SELECT * FROM photo').fetchall()[0]
assert result == expected
assert new_id == 1
Python 3.6 or later is required to run devtools_shorthand_sql.
No other third party packages are required.