🍞 Loaf
So bland yet so good!™
Effortlessly access your SQL servers and procedures, plus some other utilities.
Install
$ pip install loaf
Examples
Importing Into Your Project
from loaf import Loaf
Setting Up Credentials
# Setup your credentials with a single line.
loaf = Loaf(port=6969, db="pizzeria")
# Or load your credentials from a file.
loaf = Loaf(file="creds.ini")
# Or use a local SQLite file instead.
loaf = Loaf(file="pizzeria.db")
Executing Queries
# Make queries easily.
toppings = loaf.query("SELECT * from toppings")
# Load your quieries directly from files.
clients = loaf.query(file="getHappyClients.sql")
# Prevent disasters by executing multiple queries.
pepperoni_id, client_name = loaf.multi([
"SELECT id FROM toppings WHERE name='Pepperoni'",
"SELECT name FROM clients WHERE id=6"
])
Printing
# Display info using built-in tables!
loaf.print(pepperoni_id)
loaf.print(client_name)
loaf.print(toppings)
┏━━━━┓
┃ id ┃
┡━━━━┩
│ 1 │
└────┘
┏━━━━━━━━━━━┓
┃ name ┃
┡━━━━━━━━━━━┩
│ 'Alfonso' │
└───────────┘
┏━━━━┳━━━━━━━━━━━━━┳━━━━━━━┓
┃ id ┃ name ┃ price ┃
┡━━━━╇━━━━━━━━━━━━━╇━━━━━━━┩
│ 1 │ 'Pepperoni' │ 1.49 │
│ 2 │ 'Mushrooms' │ 1.99 │
│ 3 │ 'Onions' │ 0.99 │
└────┴─────────────┴───────┘
Data Manipulation
# Manipulate your data with dictionaries, as God intended.
for topping in toppings:
print(topping['name'])
Pepperoni
Mushrooms
Onions
Utilities
# Not lazy enough? Try some of the pre-built queires.
# Equivalent of: SELECT name FROM client WHERE name='Marco' LIMIT 1
result = loaf.select("name", "clients", "name='Marco'", limit=1)
# Get all values from a table.
result = loaf.all("toppings")
# Got stored procedures? No problemo!
result = loaf.call("ProcedureFindClient", 1)
⚠️ Syntax for the package has changed heavily since version 0.2.0, if your project depends on Loaf and is using an inferior version, I heavily suggest that you use the previous stable version:
$ pip install loaf==0.1.30
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
loaf-0.2.21.tar.gz
(6.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
loaf-0.2.21-py3-none-any.whl
(6.2 kB
view details)
File details
Details for the file loaf-0.2.21.tar.gz.
File metadata
- Download URL: loaf-0.2.21.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f38edf8283a86494020136ea9e3c722d3eead0d75736962eb8b7b53aeae8f40d
|
|
| MD5 |
d125b0816917a8bbb954b9577e95f83f
|
|
| BLAKE2b-256 |
0e52b41d06d52001a95b4997d90262d9b9053d682bd129c04d68fba7f8bfa4d5
|
File details
Details for the file loaf-0.2.21-py3-none-any.whl.
File metadata
- Download URL: loaf-0.2.21-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e73b4e9c2d18902a94e3ea1ea4ec37828808acf8e9b3eb72f12c7bf7146f6c8
|
|
| MD5 |
3bc034d1dd77fca89348b620a137d58d
|
|
| BLAKE2b-256 |
6f1ed080af669bec925b35154b8b376ff2615a49f3071d65ff6d4eb19b6387a9
|