Documentos de Académico
Documentos de Profesional
Documentos de Cultura
https://www.simplilearn.com/tutorials/mysql-tutorial/mysql-workbench-installation
través de un menú de opciones. #python #python3 #pythonapp Capítulos ⌛ 00:00 Introducción 02:42 Creación del
proyecto 03:14 Conexión a MySQL 07:31 Creación de menú principal 16:10 Listado de cursos (SELECT) 25:50 Registro
de cursos (INSERT INTO) 33:11 Validación de ingreso de datos 38:18 Eliminación de cursos (DELETE) 48:15
Actualización de cursos (UPDATE) 56:56 Conclusiones 57:22 Agradecimiento 👨💻 Código Fuente:
https://github.com/UskoKruM/app_conso...
/ uskokrum2010 🔴 ¿Quieres aprender y conversar sobre programación? Únete a nuestro grupo de Telegram ▶ :
CURSO PYTHON
https://codigofacilito.com/cursos/python-profesional
https://www.youtube.com/watch?v=RgLzqIFZg8s
Conexión.py
import mysql.connector
conexion =
mysql.connector.connect(user='root',
password='Jesmarevalo160686*', host
='localhost', database =
'jproyectos', port ='3306')
print(conexion)
S C:\Users\clori> & C:/Users/clori/AppData/
Local/Programs/Python/Python311/python.exe "c
:/Users/clori/Desktop/CURSO BD/conexion.py"
<mysql.connector.connection_cext.CMySQLConn
ection object at 0x0000019B026F5450>
PS C:\Users\clori>
Asignar permisos
Para poder establecer permisos, las siguiente sentencias deben de ejecutarse utilizando el
usuario root.
Si queremos que el nuevo usuario tenga permisos de administrador (Todos los permisos),
debemos de ejecutar la siguiente sentencia.
Si queremos asignar permisos para ciertas acciones, la sentencia quedaría de la siguiente manera.
Reemplazamos ALL PRIVILEGES y colocamos las acciones que queremos asignar.
Todos estos permisos serán válidos únicamente en la base de datos codigofacilito y se aplicarán a
todas las tablas.
Si queremos asignar permisos únicamente a una tabla, reemplazamos el asteriscos por el nombre
de la tabla.
ejemplo codigofacilito.usuarios
Una vez hayamos finalizado con los permisos, el último paso será refrescarlos.
FLUSH PRIVILEGES;
Permisos
Aquí un listado de algunos permisos que podemos asignar.
/////////////////////////////////////////////////////////////
ALTER TABLE `proyectos2`.`t_domicilio`
ADD INDEX `fk_idpersonadomicilio_idx` (`id_persona` ASC) VISIBLE;
ALTER TABLE `proyectos2`.`t_domicilio`
ADD CONSTRAINT `fk_idpersonadomicilio`
FOREIGN KEY (`id_persona`)
REFERENCES `proyectos2`.`t_persona` (`id_persona`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
Explorador Principal.py
>EDIRORES ABIERTOS From BD.conexion import DAO
>APP_CONSOLA_CRUD Import funciones
> o _pycache_
> BD ………………..
* Funciones.py
* principal.py
Principal.py
Principal.py > * menuPrincipal
1 from BD.conexion import DAO
2 import funciones
3
4
5 def menuPrincipal():
6 continuar = True
7 while(continuar):
8 opcionCorrecta = False
9 while(not opcionCorrecta):
10 print(“==================== MENU PRINCIPAL ====================”)
11 print(“1.- Listar cursos”)
12 print(“2.- Registrar curso”)
13 print(“3.- Actualizar curso”)
https://www.youtube.com/watch?v=-tgA40Ia9X8
Conexión.py
Import mysql.connector
from mysql.connector import Error
Class DAO():
Def init_(self):
Try:
Self.conexion = mysql.connector.connect(
host = ‘localhost’,
port = 3306,
user = ‘root’,
password = ‘123456’,
db = ‘universidad’
)
def listarCursos(self):
If self.conexion.is_Connected():
Try:
Cursor = self.conexion.cursor()
Cursor.execute(“SELECT * FROM curso ORDER BY nombre ASC”)
Resultados = cursor.fechall()
Return resultados
Except error as ex:
Print(“Error al intentar la conexion: {}”.format(ex))
Principal.py
from BD conexion import DAO
Import funciones
def menuPrincipal():
continuar = True
while(continuar):
opcion correcta = False
while(not opciónCorrecta):
print(“============== MENU PRINCIPAL ==========”)
print(‘1.- Listar cursos’)
print (‘2.- Registrar curso’)
print (‘3.- Actualizar curso’)
print (‘4.- Eliminar curso’)
print (‘5.- Salir’)
print (‘============== ============== ==========’)
opcion = int(input(‘Seleccione una opción : ‘))
def ejecutarOpcion(opción)
dao = DAO()
if opción == 1:
try:
cursos = dao.listarCursos()
if len(cursos) > 0:
funciones.listarCursos(cursos)
else
print(“No se encontraron cursos….”)
except:
print(“Ocurrio un error..….”)
elseif opción == 2:
curso = funciones.pedirDatosRegistro()
try:
cursos = dao.registrarCursos()
if len(cursos) > 0:
funciones.listarCursos(cursos)
else
print(“No se encontraron cursos….”)
except:
print(“Ocurrio un error..….”)
elseif opción == 3:
try:
cursos = dao.listarCursos()
if len(cursos) > 0:
curso = funciones.pedirDatosActualizacion(cursos)
if curso:
dao.actualizarCurso(curso)
else:
print(“Código de curso no encontrado… \n”)
else:
print(“No se encontraron cursos… \n”)
except:
print(“Ocurrio un error..….”)
elseif opción == 4:
try:
cursos = dao.listarCursos()
if len(cursos) > 0:
codigoEliminar=funciones.pedirDatosEliminacion(cursos)
if not(codigoEliminar == “”):
dao.elimiarCurso(CodigoEliminar)
else:
print(“Codigo de curso no encontrado..….\n”)
else:
except:
print(“Ocurrio un error..….”)
Funciones.py
Def listar(cursos):
Print(“\n Cursos: ”)
Contador = 1
For cur in cursos:
datos = “{0} Codigo: {1}|Nombre: {2} ({} Creditos)”
print(datos.format(contador, cur[0], cur[1], cur[2]))
contador = contador + 1
print(“ ”)
Def pedirDatosRegistro():
codigoCorrecto = False
while()not codigoCorrecto):
código = imput(“Ingrese código: ”)
if len(código) == 6:
codigoCorrecto == true
else:
print(“Codigo incorrecto: debe tener 6 digitos”)
creditosCorrecto = false
while(not creditosCorrecto):
creditos = input(“Ingrese créditos: ”)
if créditos.isnumeric():
if (int(creditos) > 0):
creditosCorrecto = true
créditos = int(creditos)
else:
print(“Los créditos deben ser mayor a cero (0)”)
else:
print(“Creditos incorrectos: debe ser numerico.”)
curso = (código, nombre, creditos)
return curso
Def pedirDatoseliminacion(cursos):
listarCursos(cursos)
existe Codigo = False
codigoELiminar = input(“Ingrese el Código del curso a eliminar: ”)
for cur in cursos:
if cur[0] == codigoEliminar:
existe Codigo = True
break
if not existeCodigo:
codigoEliminar = “”
reurn codigoEliminar
Def pedirDatosActualizacion(cursos):
listarCursos(cursos)
existe Codigo = False
codigoEditar = input (“Ingrese el Código del curso a modificar: ”)
if existeCodigo:
nombre=input (“Ingrese créditos: ”)
creditoCorrecto = False
while (not creditosCorrecto):
creditos = input(“Ingrese creditos a modificar : ”)
if créditos.isnumeric():
if (int(creditos) > 0):
creditosCorrecto = True
creditos = int(creditos)
else:
print(“Los créditos deben ser mayor a cero”)
else:
print(“Créditos incorrectos: solo acepta valores
numericos”)
curso = (codigoEditar,nombre,creditos)
else:
curso = None
Return curso
return codigoEliminar