Metadata-Version: 2.1
Name: Rsql
Version: 1.1
Summary: Rsql
Home-page: UNKNOWN
Author: Raf
License: MIT
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 Rsql.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 Rsql.Rpostgres import Rpostgres  
        $ 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 Rsql.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
        
        
Keywords: sql,sql python,clear SQL,flask SQL,MYSQL,SQLITE3,postgresql
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
