Este paquete proporciona una serie de funcionalidades para gestionar bases de datos SQLite3 de manera sencilla y estandarizada.
Project description
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 llamadausers
con 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 tablausers
con 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 tablausers
conadd_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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sqlite3_manager-1.0.1.tar.gz
.
File metadata
- Download URL: sqlite3_manager-1.0.1.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2ae126cbfbc23e0c911162079e9ea4e045a20e99a4f0a15a1df4dbe49796fba |
|
MD5 | 933a975dd52af0da3b04547f2c9eb937 |
|
BLAKE2b-256 | 57b68e6b8c3ae5b1e2680c71ebbbb4ce8a9ca20a83ba453cff5bde7eea78ac70 |
File details
Details for the file sqlite3_manager-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: sqlite3_manager-1.0.1-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5198245ab32d9434dead27bf1958366ee7669c5988007e9ec728f57a3393f9c2 |
|
MD5 | 55411f5cdce38a4fea8a889436604d7b |
|
BLAKE2b-256 | 88f2de7ccacf1164a78fb363f61105acf675d109e8b79514bc30a637b900b2db |