Skip to main content

Rsql

Project description

# Rsql

Чистые и быстрыее sql запросы для python. Если вы по какой то причине не хотите использовать ORM, то этот пакет создан для вас. Минимальный вес, интерфейс и весь SQL в ваших руках!


# Поддержка:

- MySQL 8
- SQLite 3
- Postgresql 10


Всего 3 шага для работы с пакетом:
- [Установка] соединения и настройка
- Запрос на все виды [изменения] Db.set( "INSERT INTO ...", (params))
- Запрос на все виды [получения] Db.get( "SELECT * FROM ....", (params))



> Пакет базируется на включенном в
> Python коннектор Sqlite
> Сторонних: Pymysql для Mysql и
> Psycopg для Postgresql


### Installation

Советуем использовать [Python](https://www.python.org/downloads/) v.3.6+

```sh
$ cd your project
$ pip install Rsql
```

### Mysql

```sh
$ from Rmysql import Rmysql
$ db = Rmysql('0.0.0.0', 'test', 'root', 'root', 3307)
$ db.set("INSERT INTO pet (name, owner, species, sex) VALUES(%s, %s, %s, %s)", ('Rex', 'Alex', 'dogger', 1))
$ print(db.get("SELECT name FROM pet"))
```

### Postgresql

```sh
$ from Rsqlite import Rsqlite
$ db = Rpostgres('0.0.0.0', 'test', 'root', 'root', 5432)
$ db = db.set("INSERT INTO users (id, name) VALUES(1, 'Alex')" )
$ db = db.set("INSERT INTO users (id, name) VALUES(%s, %s)", (2, 'Joan'))
$ print(db.get("SELECT * FROM users WHERE id > %s", ('1')))

```
> *всегда используйте %s в серверных базах данных как Mysql, Postgresql
>Параметры следует писать отдельно для избежения SQL инъекций

### SQlite

```sh
$ from Rsqlite import Rsqlite

--- необязательный параметр абсолютного пути для хранения базы---
import os
dir_path = os.path.dirname(os.path.realpath(__file__))

$ db = Rsqlite('lend.db', path=dir_path+'/')
$ db.set('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(40), age INT)')
$ db.set("INSERT INTO users (name, age) VALUES(?, ?)", [('Alex', 22), ('Peter', 55)])
$ db.set("INSERT INTO users (name) VALUES(?)", [('Alex',)])
$ db.set("INSERT INTO users (name,age) VALUES('Joan', 30)", )

$ print(db.get("SELECT * FROM users WHERE age < 25"))
$ print(db.get("SELECT * FROM users WHERE age > ? AND name = ?", ('25', 'Joan') ))
```

License
----

MIT



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

Rsql-1.0.tar.gz (3.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

Rsql-1.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

Rsql-1.0-py2-none-any.whl (6.9 kB view details)

Uploaded Python 2

File details

Details for the file Rsql-1.0.tar.gz.

File metadata

  • Download URL: Rsql-1.0.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15rc1

File hashes

Hashes for Rsql-1.0.tar.gz
Algorithm Hash digest
SHA256 016c516f8d14dac8b7f194d4886f5f6cf523ce6cd8b0126a099590cdd1b8777b
MD5 e7786aff823969c23cda22d870547cfb
BLAKE2b-256 786eee9a6266f3e6c2f941443c7ec8988760db759f92f9fe86305d486763415a

See more details on using hashes here.

File details

Details for the file Rsql-1.0-py3-none-any.whl.

File metadata

  • Download URL: Rsql-1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15rc1

File hashes

Hashes for Rsql-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7586ecd9d33db7ce531be8aaf42c14e55f89c2da49f40cb56c425c56e9532881
MD5 3f7c293faa62f5946141bd5ddccdaa81
BLAKE2b-256 1d314ab953135ca203456935facb72a3e044db8de1788556fbdd0103236dbeb0

See more details on using hashes here.

File details

Details for the file Rsql-1.0-py2-none-any.whl.

File metadata

  • Download URL: Rsql-1.0-py2-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15rc1

File hashes

Hashes for Rsql-1.0-py2-none-any.whl
Algorithm Hash digest
SHA256 2b35ae757c723ae72073c6d694b7c73cf735ad361c344e402ffb3a9c14059294
MD5 cea3fd3ed2604cb00f149de7a01d0522
BLAKE2b-256 123a91262c2228ecf1773d3e32f8960251ad4c14cda8c45328deb9316b71c9cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page