Bottle PostgreSQL is a simple adapter for PostgreSQL with connection pooling.
Project description
Bottle PostgreSQL
Bottle PostgreSQL is a simple adapter for PostgreSQL with connection pooling.
Configuration
The configuration can be done through JSON file or by Dict following the pattern described below:
{
"database": "postgres",
"host": "localhost",
"max_connection": 10,
"password": "postgres",
"port": 5432,
"print_sql": true,
"username": "postgres"
}
Create the queries
directory. This should contain all the .sql
files that the library will use.
Usage
PyPostgreSQLWrapper usage description:
Delete
Delete with where
from bottle_postgresql import Database
with Database() as connection:
(
connection
.delete('test')
.where('id', 1)
.execute()
)
Delete with where condition
from bottle_postgresql import Database
with Database() as connection:
(
connection
.delete('test')
.where('description', 'Test%', operator='like')
.execute()
)
Execute
from bottle_postgresql import Database
with Database() as connection:
(
connection
.execute(
'''
create table if not exists test (
id bigserial not null,
name varchar(100),
description varchar(255),
constraint test_primary_key primary key (id)
)
''',
skip_load_query=True
)
)
Insert
from bottle_postgresql import Database
with Database() as connection:
(
connection
.insert('test')
.set('id', 1)
.set('name', 'Name')
.set('description', 'Description')
.execute()
)
Paging
Paging with where condition
from bottle_postgresql import Database
with Database() as connection:
(
connection
.select('test')
.fields('id', 'name', 'description')
.where('id', 1, operator='>')
.order_by('id')
.paging(0, 2)
)
Paging without where condition
from bottle_postgresql import Database
with Database() as connection:
(
connection
.select('test')
.paging(0, 10)
)
Select
Fetch all
from bottle_postgresql import Database
with Database() as connection:
(
connection
.select('test')
.execute()
.fetch_all()
)
Fetch many
from bottle_postgresql import Database
with Database() as connection:
(
connection
.select('test')
.execute()
.fetch_many(1)
)
Fetch one
from bottle_postgresql import Database
with Database() as connection:
(
connection
.select('test')
.execute()
.fetch_one()
)
Select by file
from bottle_postgresql import Database
with Database() as connection:
(
connection
.execute('find_by_id', {'id': 1})
.fetch_one()
)
Select by query
from bottle_postgresql import Database
with Database() as connection:
(
connection
.execute('select id, name, description from test where id = %(id)s', {'id': 1})
.fetch_one()
)
Update
Update with where
from bottle_postgresql import Database
with Database() as connection:
(
connection
.update('test')
.set('name', 'New Name')
.set('description', 'New Description')
.where('id', 1)
.execute()
)
Update with where all
from bottle_postgresql import Database
with Database() as connection:
(
connection
.update('test')
.set('name', 'New Name')
.set('description', 'New Description')
.where_all({'id': 1, 'name': 'Name', 'description': 'Description'})
.execute()
)
Using filters
SQL
select
id,
name,
description
from test
where 1 = 1
{{#id}}
and id = %(id)s
{{/id}}
{{#id}}
and name like %(name)s
{{/id}}
Select with filters
from bottle_postgresql import Database
with Database() as connection:
(
connection
.execute('test.find_all_with_filter', parameters={'id': 1, 'name': 'Name'})
.fetch_one()
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for bottle_postgresql-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b103cb5f38d4d3f3b111b5d4d8cd472725576a3145a6a5f21886f466c9b1e77d |
|
MD5 | 84e8da8ec8379abe624e29831af641d9 |
|
BLAKE2b-256 | f77ddafefb470c1912c56f5a02ca00c863732cf2efc885d2742d42df5734544d |