Skip to main content

Este paquete proporciona una serie de funcionalidades para gestionar bases de datos SQLite3 de manera sencilla y estandarizada.

Project description

SQLite3 Manager

License

Este proyecto proporciona una librería para gestionar bases de datos SQLite3 de manera sencilla y estandarizada. Incluye funcionalidades útiles para manejar bases de datos SQLite.

Características

  • Conexión y desconexión a bases de datos SQLite.
  • Listar tablas y columnas de una base de datos.
  • Ejecutar consultas personalizadas.
  • Insertar, actualizar y eliminar registros.
  • Crear y modificar tablas dinámicamente.
  • Soporte para Python 3.10 en adelante.

Requisitos

  • Python 3.10 o superior.
  • SQLite3 instalado en el sistema.

Instalación

Puedes instalar la librería directamente desde PyPI utilizando pip:

pip install sqlite3-manager

Si deseas clonar el repositorio y usar la versión de desarrollo:

git clone https://github.com/SurivZ/sqlite3-manager.git
cd sqlite3-manager
pip install .

Uso

Ejemplo detallado con explicación

  1. Crear una instancia y conectarse a la base de datos
    Usamos el método connect() para establecer una conexión con la base de datos.

    from sqlite3manager import Connect
    conn = Connect('mi_base_de_datos.db')
    conn.connect()
    
  2. Crear una tabla
    Creamos una tabla llamada users con campos para ID, nombre, edad y correo electrónico usando create_table().

    conn.create_table('users', {
        'id': 'INTEGER PRIMARY KEY',
        'name': 'TEXT',
        'age': 'INTEGER',
        'email': 'TEXT'
    })
    
  3. Insertar datos
    Usamos el método insert() para insertar un solo registro:

    conn.insert('users', {'name': 'John Doe', 'age': 30, 'email': 'john@example.com'})
    

    También podemos insertar múltiples registros a la vez con bulk_insert():

    conn.bulk_insert('users', [
        {'name': 'Jane Doe', 'age': 25, 'email': 'jane@example.com'},
        {'name': 'Alice', 'age': 28, 'email': 'alice@example.com'}
    ])
    
  4. Leer todos los registros de la tabla
    Leemos todos los registros de la tabla users con el método read_table():

    users = conn.read_table('users')
    print(users) # [(1, 'John Doe', 30, 'john@example.com'), (2, 'Jane Doe', 25, 'jane@example.com'), (3, 'Alice', 28, 'alice@example.com')]
    
  5. Buscar registros
    Buscamos registros que cumplan con una condición específica usando el método search():

    search_result = conn.search('users', {'name': 'Alice'})
    print(search_result) # [(3, 'Alice', 28, 'alice@example.com')]
    
  6. Actualizar un registro
    Modificamos el correo electrónico de un usuario utilizando update():

    conn.update('users', {'email': 'john.new@example.com'}, {'name': 'John Doe'})
    
  7. Listar tablas y columnas
    Obtenemos una lista de las tablas disponibles en la base de datos con list_table_names():

    tables = conn.list_table_names()
    print(tables)  # ['users']
    

    También podemos obtener los nombres de las columnas de una tabla usando get_column_names():

    columns = conn.get_column_names('users')
    print(columns)  # ['id', 'name', 'age', 'email']
    
  8. Modificar la estructura de la tabla
    Añadimos una columna nueva a la tabla users con add_column():

    conn.add_column('users', 'created_at', 'TEXT')
    

    Y podemos eliminar una columna de la tabla con drop_column():

    conn.drop_column('users', 'created_at')
    
  9. Eliminar registros
    Podemos borrar registros que cumplan con una condición usando delete():

    conn.delete('users', {'name': 'Alice'})
    
  10. Ejecutar una consulta personalizada
    Ejecutamos una consulta SQL personalizada con el método custom_query():

    custom_query_result = conn.custom_query('SELECT * FROM users WHERE age > 25')
    print(custom_query_result)  # [(1, 'John Doe', 30, 'john.new@example.com')]
    
  11. Eliminar una tabla
    Si necesitamos eliminar una tabla por completo, podemos hacerlo con drop_table():

    conn.drop_table('users')
    
  12. Cerrar la conexión
    Finalmente, cerramos la conexión con el método close():

    conn.close()
    

Este ejemplo muestra cómo puedes gestionar una base de datos SQLite utilizando todos los métodos de la clase Connect.

Instrucciones para contribuciones

Si deseas contribuir a este proyecto, sigue los pasos a continuación:

  1. Haz un fork del repositorio.
  2. Clona tu fork localmente:
    git clone https://github.com/tu-usuario/sqlite3-manager.git
    
  3. Crea una rama para tu contribución:
    git checkout -b nombre-de-tu-rama
    
  4. Realiza tus cambios y haz un commit con un buen mensaje descriptivo:
    git commit -m "Descripción de los cambios"
    
  5. Haz push de tus cambios a tu fork:
    git push origin nombre-de-tu-rama
    
  6. Crea un pull request en el repositorio original.

Contacto

Si tienes preguntas o sugerencias, siéntete libre de abrir un issue o contactarme a través de franklinserrano23@email.com.


Licencia: Este proyecto está licenciado bajo la licencia BSD.

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

sqlite3_manager-1.1.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

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

sqlite3_manager-1.1.0-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file sqlite3_manager-1.1.0.tar.gz.

File metadata

  • Download URL: sqlite3_manager-1.1.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for sqlite3_manager-1.1.0.tar.gz
Algorithm Hash digest
SHA256 965128e8909682d881b2bd5c1f27c2e1729bb42e3db01a4b59a5f20d31e29417
MD5 f586d22b2f440cc9f49d81c079ce5c9f
BLAKE2b-256 7f4e2ad4b681b202140383f6504fd8b6cd942f683f15e306a69d6e51776c7ba8

See more details on using hashes here.

File details

Details for the file sqlite3_manager-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for sqlite3_manager-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1d2bbcf666f93d808a75b3710213a288017d0cc3ec6268af0b26932ee771669
MD5 bdcf854b803166491a5065daa3872ef1
BLAKE2b-256 7ff52d5456f0814166bb3beebc10b8a85483dd70d59316cf0930260cf5c37567

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