bbdd-utils 0.1__py3-none-any.whl → 0.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
bbdd_utils/utils.py CHANGED
@@ -1,2 +1,78 @@
1
1
  def saludar(nombre):
2
2
  return f"Hola, {nombre}! Esta es tu librería personalizada."
3
+
4
+
5
+ def mongo_bbdd_conection(base_datos):
6
+ from pymongo import MongoClient
7
+ # Conectar a MongoDB
8
+ cliente = MongoClient('localhost', 27017)
9
+
10
+ db=cliente.base_datos
11
+
12
+
13
+
14
+ def Conector_bbdd(tipo='sqlite', nombre='mi_base_de_datos', host='localhost', puerto=None, usuario=None, contraseña=None):
15
+ """
16
+ Conecta a una base de datos SQL o NoSQL según el tipo especificado.
17
+
18
+ Parámetros:
19
+ - tipo: 'sqlite', 'mysql' o 'mongodb'
20
+ - nombre: nombre de la base de datos
21
+ - host, puerto, usuario, contraseña: solo para MySQL y MongoDB
22
+
23
+ Retorna:
24
+ - Objeto de conexión (SQLite/MySQL) o cliente (MongoDB)
25
+ """
26
+ if tipo == 'sqlite':
27
+ import sqlite3
28
+ import os
29
+ nombre_db = f"{nombre}.db"
30
+
31
+ crear_tabla = not os.path.exists(nombre_db)
32
+ conn = sqlite3.connect(nombre_db)
33
+
34
+ if crear_tabla:
35
+ cursor = conn.cursor()
36
+ cursor.execute('''
37
+ CREATE TABLE IF NOT EXISTS usuarios (
38
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
39
+ nombre TEXT NOT NULL,
40
+ edad INTEGER NOT NULL
41
+ )
42
+ ''')
43
+ conn.commit()
44
+
45
+ return conn
46
+
47
+ elif tipo == 'mysql':
48
+ import mysql.connector
49
+ conn = mysql.connector.connect(
50
+ host=host,
51
+ user=usuario,
52
+ password=contraseña,
53
+ database=nombre
54
+ )
55
+ return conn
56
+
57
+ elif tipo == 'mongodb':
58
+ from pymongo import MongoClient
59
+ if puerto is None:
60
+ puerto = 27017
61
+ cliente = MongoClient(host=host, port=puerto, username=usuario, password=contraseña)
62
+ return cliente[nombre]
63
+
64
+ else:
65
+ raise ValueError("Tipo de base de datos no soportado. Usa 'sqlite', 'mysql' o 'mongodb'.")
66
+
67
+ def cerrar_conexion(conn):
68
+ """
69
+ Cierra la conexión a la base de datos.
70
+
71
+ Parámetros:
72
+ - conn: objeto de conexión
73
+
74
+ Retorna:
75
+ - None
76
+ """
77
+ if conn:
78
+ conn.close()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bbdd_utils
3
- Version: 0.1
3
+ Version: 0.2.1
4
4
  Summary: libreria para la gestion de bases de datos
5
5
  Author: Luis_J_Domingo
6
6
  Description-Content-Type: text/markdown
@@ -0,0 +1,7 @@
1
+ bbdd_utils/__init__.py,sha256=mfT9j4sXdmNbWKXnuAaL1YNWtqmDiUp_C3SepMIqf-4,90
2
+ bbdd_utils/utils.py,sha256=BUqLIaZQTIh7CKBYGNMSe8xLjNxGV2zL__l8V5SCnUc,2168
3
+ bbdd_utils-0.2.1.dist-info/licenses/LICENSE,sha256=D4uqg6QX0fapLNcdUznOuGaRIUPnypOdeE2zIyYq7xY,217
4
+ bbdd_utils-0.2.1.dist-info/METADATA,sha256=sv9uraT1jNwGNpgB8d2FeqBjdNF5kfVB6NEK404NvJw,291
5
+ bbdd_utils-0.2.1.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
6
+ bbdd_utils-0.2.1.dist-info/top_level.txt,sha256=bBGkVkxnOw7tZ2zRcyCM3lgVgYo1hFbcmwkGdKAj9Gk,11
7
+ bbdd_utils-0.2.1.dist-info/RECORD,,
@@ -1,7 +0,0 @@
1
- bbdd_utils/__init__.py,sha256=mfT9j4sXdmNbWKXnuAaL1YNWtqmDiUp_C3SepMIqf-4,90
2
- bbdd_utils/utils.py,sha256=pwLnNf5VklEkkgh5bIfRy60lqwdjb1uPVNOK5yIndPo,89
3
- bbdd_utils-0.1.dist-info/licenses/LICENSE,sha256=D4uqg6QX0fapLNcdUznOuGaRIUPnypOdeE2zIyYq7xY,217
4
- bbdd_utils-0.1.dist-info/METADATA,sha256=8t0SNyP8ZYrhk4CRJX1a2aFEWDBGjy9LRdTZEAyryxM,289
5
- bbdd_utils-0.1.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
6
- bbdd_utils-0.1.dist-info/top_level.txt,sha256=bBGkVkxnOw7tZ2zRcyCM3lgVgYo1hFbcmwkGdKAj9Gk,11
7
- bbdd_utils-0.1.dist-info/RECORD,,