bbdd-utils 0.2.5__tar.gz → 0.3.0__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bbdd_utils
3
- Version: 0.2.5
3
+ Version: 0.3.0
4
4
  Summary: libreria para la gestion de bases de datos
5
5
  Author: Luis_J_Domingo
6
6
  Description-Content-Type: text/markdown
@@ -1,2 +1,2 @@
1
1
  # Esto hace que puedas hacer: from milibreria import saludar
2
- from .utils import Conector_bbdd, cerrar_conexion
2
+ from .utils import Conector_bbdd, Cerrar_conexion, Insert
@@ -0,0 +1,121 @@
1
+ def saludar(nombre):
2
+ return f"Hola, {nombre}! Esta es tu librería personalizada."
3
+
4
+ def Conector_bbdd(tipo='sqlite', nombre='mi_base_de_datos', host='localhost', puerto=None, usuario=None, contraseña=None):
5
+ """
6
+ Conecta a una base de datos SQL o NoSQL según el tipo especificado.
7
+
8
+ Parámetros:
9
+ - tipo: 'sqlite', 'mysql' o 'mongodb'
10
+ - nombre: nombre de la base de datos
11
+ - host, puerto, usuario, contraseña: solo para MySQL y MongoDB
12
+
13
+ Retorna:
14
+ - Objeto de conexión (SQLite/MySQL) o cliente (MongoDB)
15
+ """
16
+ if tipo == 'sqlite':
17
+ import sqlite3
18
+ import os
19
+ nombre_db = f"{nombre}.db"
20
+
21
+ crear_tabla = not os.path.exists(nombre_db)
22
+ conn = sqlite3.connect(nombre_db)
23
+
24
+ if crear_tabla:
25
+ cursor = conn.cursor()
26
+ cursor.execute('''
27
+ CREATE TABLE IF NOT EXISTS usuarios (
28
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
29
+ nombre TEXT NOT NULL,
30
+ edad INTEGER NOT NULL
31
+ )
32
+ ''')
33
+ conn.commit()
34
+
35
+ return conn
36
+
37
+ elif tipo == 'mysql':
38
+ import mysql.connector
39
+ conn = mysql.connector.connect(
40
+ host=host,
41
+ port=3306,
42
+ user=usuario,
43
+ password=contraseña,
44
+ database=nombre
45
+ )
46
+ return conn
47
+
48
+ elif tipo == 'mongodb':
49
+ from pymongo import MongoClient
50
+ if puerto is None:
51
+ puerto = 27017
52
+ cliente = MongoClient(host=host,
53
+ port=puerto,
54
+ username=usuario,
55
+ password=contraseña)
56
+ print("Conectado a MongoDB")
57
+ return cliente[nombre]
58
+
59
+ else:
60
+ raise ValueError("Tipo de base de datos no soportado. Usa 'sqlite', 'mysql' o 'mongodb'.")
61
+
62
+ def cerrar_conexion(conn):
63
+ """
64
+ Cierra la conexión a la base de datos.
65
+
66
+ Parámetros:
67
+ - conn: objeto de conexión
68
+
69
+ Retorna:
70
+ - None
71
+ """
72
+ if conn:
73
+ conn.close()
74
+
75
+ def Insert(conn, data):
76
+ # Verifica el tipo de base de datos con la que estamos trabajando
77
+ if isinstance(conn, sqlite3.Connection):
78
+ print("Conexión exitosa a la base de datos SQL.")
79
+ # Si estamos usando SQLite, podemos trabajar con la conexión de esta manera
80
+ cursor = conn.cursor()
81
+ # Inserta datos en la tabla 'usuarios'
82
+ cursor.execute("INSERT INTO usuarios (nombre, edad) VALUES (?, ?)", data)
83
+ conn.commit()
84
+ print("Datos insertados correctamente en la base de datos SQL.")
85
+
86
+ # Consulta los datos insertados
87
+ cursor.execute("SELECT * FROM usuarios")
88
+ resultados = cursor.fetchall()
89
+ for fila in resultados:
90
+ print(f"ID: {fila[0]}, Nombre: {fila[1]}, Edad: {fila[2]}")
91
+
92
+ elif isinstance(conn, mysql.connector.connection.MySQLConnection):
93
+ print("Conexión exitosa a la base de datos MySQL.")
94
+ # Si estamos usando MySQL, podemos trabajar con la conexión de esta manera
95
+ cursor = conn.cursor()
96
+ # Inserta datos en la tabla 'usuarios'
97
+ cursor.execute("INSERT INTO usuarios (nombre, edad) VALUES (%s, %s)", data)
98
+ conn.commit()
99
+ print("Datos insertados correctamente en la base de datos MySQL.")
100
+
101
+ # Consulta los datos insertados
102
+ cursor.execute("SELECT * FROM usuarios")
103
+ resultados = cursor.fetchall()
104
+ for fila in resultados:
105
+ print(f"ID: {fila[0]}, Nombre: {fila[1]}, Edad: {fila[2]}")
106
+
107
+
108
+
109
+ elif isinstance(conn, Database):
110
+ print("Conexión exitosa a la base de datos NoSQL.")
111
+ print(conn)
112
+ # Si estamos usando MongoDB, podemos trabajar con la base de datos NoSQL de esta manera
113
+ usuarios = conn["usuarios"] # Supone que estamos trabajando con la colección 'usuarios'
114
+
115
+ # Inserta un documento en la colección
116
+ usuarios.insert_one({"nombre": "Ana", "edad": 25})
117
+ print("Datos insertados correctamente en la base de datos NoSQL.")
118
+
119
+ # Consulta los documentos insertados
120
+ for usuario in usuarios.find():
121
+ print(f"Nombre: {usuario['nombre']}, Edad: {usuario['edad']}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bbdd_utils
3
- Version: 0.2.5
3
+ Version: 0.3.0
4
4
  Summary: libreria para la gestion de bases de datos
5
5
  Author: Luis_J_Domingo
6
6
  Description-Content-Type: text/markdown
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='bbdd_utils',
5
- version='0.2.5',
5
+ version='0.3.0',
6
6
  packages=find_packages(),
7
7
  install_requires=[],
8
8
  author='Luis_J_Domingo',
@@ -1,83 +0,0 @@
1
- def saludar(nombre):
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,
62
- port=puerto,
63
- username=usuario,
64
- password=contraseña)
65
- print("Conectado a MongoDB")
66
- print(cliente.list_database_names())
67
- return cliente[nombre]
68
-
69
- else:
70
- raise ValueError("Tipo de base de datos no soportado. Usa 'sqlite', 'mysql' o 'mongodb'.")
71
-
72
- def cerrar_conexion(conn):
73
- """
74
- Cierra la conexión a la base de datos.
75
-
76
- Parámetros:
77
- - conn: objeto de conexión
78
-
79
- Retorna:
80
- - None
81
- """
82
- if conn:
83
- conn.close()
File without changes
File without changes
File without changes
File without changes