db wrapper for mysql
Project description
mydb
mydb is a simple db wrapper for mysql.
Install
pip install mydb
Usage
Single Connection
from mydb.connection import Connection db = Connection("mysql://youngking@localhost:13306/mydatabase") for article in db.query("SELECT * FROM articles"): print article.title
Multiple Connection Like Master/Slave
from mydb.router import ConnectionRouter from mydb.proxy import DBProxy router = ConnectionRouter(["myapp.somewhere.MasterSlaveRouter"]) db = DBProxy(router) for article in db.query("SELECT * FROM articles"): print article.title
Database routers
A database Router is a class that provides up to two methods:
db_for_read(statement, **hints)
Suggest the database that should be used for read operations for ``SELECT`` statement. If a database operation is able to provide any additional information that might assist in selecting a database, it will be provided in the hints dictionary. Details on valid hints are provided below. Returns None if there is no suggestion.
db_for_write(model, **hints)
Suggest the database that should be used for writes of statements except ``SELECT``. If a database operation is able to provide any additional information that might assist in selecting a database, it will be provided in the hints dictionary. Details on valid hints are provided below.
There is an example in tests/test_router.py.
A router doesn’t have to provide all these methods – it may omit one or more of them. If one of the methods is omitted, mydb will skip that router when performing the relevant check.
In mydb.router there are some default routers, where you can inherit from and overwriten them.
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mydb-0.1.2.tar.gz
(17.6 kB
view details)
File details
Details for the file mydb-0.1.2.tar.gz
.
File metadata
- Download URL: mydb-0.1.2.tar.gz
- Upload date:
- Size: 17.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73b8d0ba5460f626990519db99846419f200925c2f178af873c81f156a591fa5 |
|
MD5 | 1d21a46b16496fc41ce81c357802eb8d |
|
BLAKE2b-256 | 2b37dde5ab43c033222c86c78676437c948c2330b148cf719bfc8850d9ab180d |