SQLite3 Manager
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
-
Crear una instancia y conectarse a la base de datos
Usamos el métodoconnect()para establecer una conexión con la base de datos.from sqlite3manager import Connect conn = Connect('mi_base_de_datos.db') conn.connect()
-
Crear una tabla
Creamos una tabla llamadauserscon campos para ID, nombre, edad y correo electrónico usandocreate_table().conn.create_table('users', { 'id': 'INTEGER PRIMARY KEY', 'name': 'TEXT', 'age': 'INTEGER', 'email': 'TEXT' })
-
Insertar datos
Usamos el métodoinsert()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'} ])
-
Leer todos los registros de la tabla
Leemos todos los registros de la tablauserscon el métodoread_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')]
-
Buscar registros
Buscamos registros que cumplan con una condición específica usando el métodosearch():search_result = conn.search('users', {'name': 'Alice'}) print(search_result) # [(3, 'Alice', 28, 'alice@example.com')]
-
Actualizar un registro
Modificamos el correo electrónico de un usuario utilizandoupdate():conn.update('users', {'email': 'john.new@example.com'}, {'name': 'John Doe'})
-
Listar tablas y columnas
Obtenemos una lista de las tablas disponibles en la base de datos conlist_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']
-
Modificar la estructura de la tabla
Añadimos una columna nueva a la tablausersconadd_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')
-
Eliminar registros
Podemos borrar registros que cumplan con una condición usandodelete():conn.delete('users', {'name': 'Alice'})
-
Ejecutar una consulta personalizada
Ejecutamos una consulta SQL personalizada con el métodocustom_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')]
-
Eliminar una tabla
Si necesitamos eliminar una tabla por completo, podemos hacerlo condrop_table():conn.drop_table('users')
-
Cerrar la conexión
Finalmente, cerramos la conexión con el métodoclose():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:
- Haz un fork del repositorio.
- Clona tu fork localmente:
git clone https://github.com/tu-usuario/sqlite3-manager.git
- Crea una rama para tu contribución:
git checkout -b nombre-de-tu-rama
- Realiza tus cambios y haz un commit con un buen mensaje descriptivo:
git commit -m "Descripción de los cambios"
- Haz push de tus cambios a tu fork:
git push origin nombre-de-tu-rama
- 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.
Metadata
Release files for sqlite3-manager 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sqlite3_manager-1.1.0.tar.gz | 7.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sqlite3_manager-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.5 kB
Release files / sqlite3_manager-1.1.0.tar.gz
| Download URL | sqlite3_manager-1.1.0.tar.gz |
|---|---|
| Size | 7.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
965128e8909682d881b2bd5c1f27c2e1729bb42e3db01a4b59a5f20d31e29417
|
|
BLAKE2b-256 checksum How to use checksums |
7f4e2ad4b681b202140383f6504fd8b6cd942f683f15e306a69d6e51776c7ba8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / sqlite3_manager-1.1.0-py3-none-any.whl
| Download URL | sqlite3_manager-1.1.0-py3-none-any.whl |
|---|---|
| Size | 8.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c1d2bbcf666f93d808a75b3710213a288017d0cc3ec6268af0b26932ee771669
|
|
BLAKE2b-256 checksum How to use checksums |
7ff52d5456f0814166bb3beebc10b8a85483dd70d59316cf0930260cf5c37567
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|