UnQLite Binding for Python
Project description
unqlitepy
=============
UnQLite for Python Binding
## Install
```sh
> sudo pip install unqlitepy
...
Successfully installed UnQLitePy
Cleaning up...
```
or
```sh
> virtualenv sample
> cd sample
> bin/pip install git+https://github.com/nobonobo/unqlitepy.git
...
Successfully installed UnQLitePy
Cleaning up...
```
## Usage
```python
from unqlitepy import UnQLite
with UnQLite(':mem:') as db:
db.store('test', 'hello!')
print db.fetch('test') # -> hello!
db.append('test', ' world!')
print db.fetch('test') # -> hello! world!
db.delete('test')
for i in range(25):
db.store('test{0}'.format(i), 'hello!')
db.store('etst{0}'.format(i), 'hello!')
if i%5==0:
db.delete('etst{0}'.format(i))
@UnQLite.FetchCallback
def f(output, outlen, udata):
output = (c_char*outlen).from_address(output).raw
print locals()
return UNQLITE_OK
db.fetch_cb('test0', f)
sample = (
"print 'hello!\n';"
"db_create('users'); /* Create the collection users */"
"db_create('hoges');"
" /* Store something */ "
"db_store('users',{ 'name' : 'dean' , 'age' : 32 });"
"db_store('hoges',{ 'name' : 'dean' , 'age' : 32 });"
"db_store('users',{ 'name' : 'chems' , 'age' : 27 });"
"db_store('hoges',{ 'name' : 'chems' , 'age' : 27 });"
"print db_fetch_all('users')..'\n';"
"/*print db_reset_record_cursor('users')..'\n';*/"
"while( ($rec = db_fetch('users')) != NULL ){"
" print $rec; print '\n';"
"}"
)
with db.compile(sample) as vm:
vm.execute()
with vm.new_scalar() as sv, vm.new_array() as av:
print sv, sv.is_scalar()
print av, av.is_json_array()
db.fetch_cb('users', f)
with db.cursor() as cursor:
cursor.first()
cursor.seek('test20')
while cursor.valid():
print repr(cursor.key()), repr(cursor.value())
cursor.next()
```
=============
UnQLite for Python Binding
## Install
```sh
> sudo pip install unqlitepy
...
Successfully installed UnQLitePy
Cleaning up...
```
or
```sh
> virtualenv sample
> cd sample
> bin/pip install git+https://github.com/nobonobo/unqlitepy.git
...
Successfully installed UnQLitePy
Cleaning up...
```
## Usage
```python
from unqlitepy import UnQLite
with UnQLite(':mem:') as db:
db.store('test', 'hello!')
print db.fetch('test') # -> hello!
db.append('test', ' world!')
print db.fetch('test') # -> hello! world!
db.delete('test')
for i in range(25):
db.store('test{0}'.format(i), 'hello!')
db.store('etst{0}'.format(i), 'hello!')
if i%5==0:
db.delete('etst{0}'.format(i))
@UnQLite.FetchCallback
def f(output, outlen, udata):
output = (c_char*outlen).from_address(output).raw
print locals()
return UNQLITE_OK
db.fetch_cb('test0', f)
sample = (
"print 'hello!\n';"
"db_create('users'); /* Create the collection users */"
"db_create('hoges');"
" /* Store something */ "
"db_store('users',{ 'name' : 'dean' , 'age' : 32 });"
"db_store('hoges',{ 'name' : 'dean' , 'age' : 32 });"
"db_store('users',{ 'name' : 'chems' , 'age' : 27 });"
"db_store('hoges',{ 'name' : 'chems' , 'age' : 27 });"
"print db_fetch_all('users')..'\n';"
"/*print db_reset_record_cursor('users')..'\n';*/"
"while( ($rec = db_fetch('users')) != NULL ){"
" print $rec; print '\n';"
"}"
)
with db.compile(sample) as vm:
vm.execute()
with vm.new_scalar() as sv, vm.new_array() as av:
print sv, sv.is_scalar()
print av, av.is_json_array()
db.fetch_cb('users', f)
with db.cursor() as cursor:
cursor.first()
cursor.seek('test20')
while cursor.valid():
print repr(cursor.key()), repr(cursor.value())
cursor.next()
```
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
unqlitepy-0.3.0.tar.gz
(417.7 kB
view details)
File details
Details for the file unqlitepy-0.3.0.tar.gz
.
File metadata
- Download URL: unqlitepy-0.3.0.tar.gz
- Upload date:
- Size: 417.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64fc61edb9cec6d0c3513a5b3629647bb08a1b5ade887992dfec5ea29180628c |
|
MD5 | 8cfed4b8c5ef98788b97ab9a9cc7ac3d |
|
BLAKE2b-256 | 61d685d11dde754edde502f6cf723095cddb0f2157a8bbc1f004afe3e625ea1c |