Skip to main content

This is a library to simplify the use of a SQLite3 database, easy to use, easy to understand.

Project description

NewSimpleSQL

English

Use the easiest SQL programming language with PySimpleSQL!

For now, it only has support for SQLite3

Download

pip install NewSimpleSQL

How connect your database:

-SQLite

from NewSimpleSQL.SimpleSQLite import Database

#With auto commit
database: Database = Database('example_database.db')

#Without auto commit
database: Database = Database('example_database.db', False)

How to create tables in your database:

-SQLite

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Create one table
database.simple_create_table({
    "name" : "example_table",
    "columns" : {
        "id" : (int,)
        "default_number" : [int, 0],
        "number_constraints" : {
            "type" : int,
            "constraints" : "CHECK (number_constraints > 18)"
        }
    }
})

#Create multiple tables
database.complicated_create_tables([
    {
        "name" : "example_table_2",
        "columns" : {
            "id" : ID(int),
            "number_of_the_first_table" : int
        },
        "fk" : {
            "number_of_the_first_table" : ("example_table", "default_number")
            # Table column name : (Name of the other table, Column of the other table)
        }
    }
    #Other tables
])

Column Types:

SQLite

  • int = INTEGER
  • float = REAL
  • str = TEXT
  • sqlite3.Blob|Blob = BLOB
  • Numeric() = NUMERIC

IDs, defaults y constraints:

SQLite

  • (id_type[int|str],)|ID(int|str) = id_type PRIMARY KEY
  • [column_type[int|str], value] = column_type DEFAULT value
  • { "type" : type, "constraints" : str } = "type" "constraints"

How to get data from the database:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Get data from one table
database.simple_select_data("table_name", "column1, column2, ..., column_infinity"|"*", 'WHERE column1 = 0 ORDER BY column1'|None, one_fetch=True|False)

#Get data from multiple table
database.complicated_select_data([
    {
        "name" : "table_name",
        "column" : "column1, column2, column3, ..., column_infinity",
        "condition" : "WHERE column1 = 0 ORDER BY column1",
        "fetch" : False
    },
    {
        "name" : "table_name_2",
        "column" : "column1, column2, column3, ..., column_infinity",
        "condition" : "WHERE column2 = 0 ORDER BY column2",
        "fetch" : True
    }
])

How to Insert Data into the Database:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Insert data into a single table
database.simple_insert_data("table_name", (value1, value2, value3, ..., value_infinity))

#Insert data into one or more tables
database.complicated_insert_data({
    "table_name" : (value1, value2, value3, ..., value_infinity),
    "table_name_2" : (value1, value2, value3, ..., value_infinity)
})

How to update data in the database:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Update data in a single table
database.simple_update_data("table_name", 'column1 = 0, column2 = "Hello", column3 = False', 'WHERE column1 != 0')

#Update data in one or more tables
database.complicated_update_data([
    {
        "name" : "example_table",
        "columns" : 'column1 = 0, column4 = "Bye"',
        "condition" : 'WHERE column1 != 0'
    },
    {
        "name" : "example_table_2",
        "columns" : 'column1 = 0, column4 = "Bye"',
        "condition" : 'WHERE column4 != "Bye"'
    }
])

These are all the basic commands.

Español

¡Utiliza el lenguaje de programación SQL más facil con PySimpleSQL!

Por ahora, solo tiene soporte son SQLite3

Descarga

pip install NewSimpleSQL

Como usar la libreria

Importar la libreria:

import NewSimpleSQL

Como conectarte a tu base de datos:

-SQLite

from NewSimpleSQL.SimpleSQLite import Database

#Con auto commit
database: Database = Database('example_database.db')

#Sin auto commit
database: Database = Database('example_database.db', False)

Como crear tablas en tu base de datos:

-SQLite

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Crear una tabla
database.simple_create_table({
    "name" : "tabla_de_ejemplo",
    "columns" : {
        "id" : (int,)
        "numero_por_defecto" : [int, 0],
        "restriccion_de_numero" : {
            "type" : int,
            "constraints" : "CHECK (restriccion_de_numero > 18)"
        }
    }
})

#Crear varias tablas
database.complicated_create_tables([
    {
        "name" : "tabla_de_ejemplo_2",
        "columns" : {
            "id" : ID(int),
            "numero_de_la_primera_tabla" : int
        },
        "fk" : {
            "numero_de_la_primera_tabla" : ("tabla_de_ejemplo", "numero_por_defecto")
            # Nombre de la columna de la tabla : (Nombre de la otra tabla, Columna de la otra tabla)
        }
    }
    #Otras tablas
])

Tipos de columnas:

SQLite

  • int = INTEGER
  • float = REAL
  • str = TEXT
  • sqlite3.Blob|Blob = BLOB
  • Numeric() = NUMERIC

IDs, defaults y constraints:

SQLite

  • (id_type[int|str],)|ID(int|str) = id_type PRIMARY KEY
  • [column_type[int|str], value] = column_type DEFAULT value
  • { "type" : type, "constraints" : str } = "type" "constraints"

Como conseguir datos de la base de datos:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Conseguir datos de una tabla
database.simple_select_data("table_name", "column1, column2, ..., column_infinity"|"*", 'WHERE column1 = 0 ORDER BY column1'|None, one_fetch=True|False)

#Conseguir datos de varias tablas
database.complicated_select_data([
    {
        "name" : "table_name",
        "column" : "column1, column2, column3, ..., column_infinity",
        "condition" : "WHERE column1 = 0 ORDER BY column1",
        "fetch" : False
    },
    {
        "name" : "table_name_2",
        "column" : "column1, column2, column3, ..., column_infinity",
        "condition" : "WHERE column2 = 0 ORDER BY column2",
        "fetch" : True
    }
])

Como insertar datos en la base de datos:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Insertar datos en una sola tabla
database.simple_insert_data("table_name", (value1, value2, value3, ..., value_infinity))

#Insertar datos en una o mas tablas
database.complicated_insert_data({
    "table_name" : (value1, value2, value3, ..., value_infinity),
    "table_name_2" : (value1, value2, value3, ..., value_infinity)
})

Como actualizar datos en la base de datos:

from NewSimpleSQL.SimpleSQLite import Database

database: Database = Database('example_database.db')

#Actualizar datos en una sola tabla
database.simple_update_data("table_name", 'column1 = 0, column2 = "Hola", column3 = False', 'WHERE column1 != 0')

#Actualizar datos en una o mas tablas
database.complicated_update_data([
    {
        "name" : "example_table",
        "columns" : 'column1 = 0, column4 = "Adios"',
        "condition" : 'WHERE column1 != 0'
    },
    {
        "name" : "example_table_2",
        "columns" : 'column1 = 0, column4 = "Adios"',
        "condition" : 'WHERE column4 != "Adios"'
    }
])

Estos son todos los comandos basicos.

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

newsimplesql-0.6.0.3.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

NewSimpleSQL-0.6.0.3-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file newsimplesql-0.6.0.3.tar.gz.

File metadata

  • Download URL: newsimplesql-0.6.0.3.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for newsimplesql-0.6.0.3.tar.gz
Algorithm Hash digest
SHA256 f0a5e1f988d236e77dffedcaa24ee328ef5619559827ccb803883855a009e473
MD5 1c81c6f80a9a6479dccfb6903353cbfc
BLAKE2b-256 4441ec8f164943981923bf4532c112a07f885f01ec6235a9abfb06e881e421b1

See more details on using hashes here.

File details

Details for the file NewSimpleSQL-0.6.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for NewSimpleSQL-0.6.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2ee0601433e21f15b00bdb3a53d0a441ef4c7d19fabcbf46bc3641e476c66ebb
MD5 c469d7f7ace9b8a97dda5cb51194a2f9
BLAKE2b-256 1956ced856127a8abca58dc785ddf7f5d44818697f589e9d76f2ad1532f38c84

See more details on using hashes here.

Supported by

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