import tkMessageBox
from Tkinter import *
import mysql.connector
import ttk
v0 = Tk()
v0.title("Base de datos")
v0.geometry("700x500")
def table():
root = Tk()
global treeVie
tab= ttk.Treeview(root)
tab.grid(row=0, column=0, columnspan=5)
tab["columns"] = ["Numero de Control", "Nombre", "Apellido Paterno", "Apellido Materno", "Correo"]
tab["show"] = "headings"
tab.heading("Numero de Control", text="ID")
tab.column("Numero de Control", minwidth=0, width=100, stretch=NO)
tab.heading("Nombre", text="Nombre")
tab.column("Nombre", minwidth=0, width=150, stretch=NO)
tab.heading("Apellido Paterno", text="Apellido Paterno")
tab.column("Apellido Paterno", minwidth=0, width=100, stretch=NO)
tab.heading("Apellido Materno", text="Apellido Materno")
tab.column("Apellido Materno", minwidth=0, width=100, stretch=NO)
tab.heading("Correo", text="Correo")
tab.column("Correo", minwidth=0, width=200, stretch=NO)
sql = "select * from alumnos"
cursor.execute(sql)
l=0
c=0
for row in cursor.fetchall():
tab.insert("", l, c, values=row)
l=l + 1
c=c+1
root.mainloop()
def insert():
def okin():
dato1 = (caja1.get())
dato2 = caja2.get()
dato3 = caja3.get()
dato4 = caja4.get()
dato5 = caja5.get()
values = "call tecnologico.students(%s,%s,%s,%s,%s,%s)"
try:
cursor.execute(values, (dato1, dato2, dato3, dato4, dato5,'nuevo'))
conexion.commit()
tkMessageBox.showinfo("Mensaje", "Se Han insertado correctamente")
caja1.delete(0, 20)
caja2.delete(0, 20)
caja3.delete(0, 20)
caja4.delete(0, 20)
caja5.delete(0, 20)
except:
tkMessageBox.showinfo("Mensaje", "Error al insertar los datos")
v1 = Toplevel(v0)
v1.deiconify()
v1.geometry("400x500")
hola = Label(v1, text="Inserte datos", height=2, font="Verdana 14")
hola.grid(row=1,column=1)
numero = Label(v1, text="No. de Control :", height=2)
numero.grid(row=2, column=1)
n1 = StringVar()
caja1 = Entry(v1, textvariable=n1)
caja1.grid(row=2, column=2)
nombre = Label(v1, text="Nombre : ", height=2)
nombre.grid(row=3, column=1)
n2 = StringVar()
caja2 = Entry(v1, textvariable=n2)
caja2.grid(row=3, column=2)
apellido1 = Label(v1, text="Apellido Paterno : ", height=2)
apellido1.grid(row=4, column=1)
n3 = StringVar()
caja3 = Entry(v1, textvariable=n3)
caja3.grid(row=4, column=2)
apellido2 = Label(v1, text="Apellido Materno: ", height=2)
apellido2.grid(row=5, column=1)
n4 = StringVar()
caja4 = Entry(v1, textvariable=n4)
caja4.grid(row=5, column=2)
correo = Label(v1, text="Correo : ", height=2)
correo.grid(row=6, column=1)
n5 = StringVar()
caja5 = Entry(v1, textvariable=n5)
caja5.grid(row=6, column=2)
b4 = Button(v1, text="Regresar ", command=lambda: v1.destroy())
b4.grid(row=7,column=1)
b1 = Button(v1, text="Insertar", command=lambda: okin(), width=15, height=2)
b1.grid(row=7, column=2)
def delete():
def okin():
dato1 = float(caja1.get())
values = "call tecnologico.students(%s,%s,%s,%s,%s,%s)"
try:
cursor.execute(values, (dato1, '', '', '', '','eliminar'))
conexion.commit()
tkMessageBox.showinfo("Mensaje", "Se ha borrado correctamente")
caja1.delete(0, 20)
except:
tkMessageBox.showinfo("Mensaje", "Error al borrar los datos")
v1 = Toplevel(v0)
v1.deiconify()
v1.geometry("400x200")
hola = Label(v1, text="Borrar dato", height=2, font="Verdana 14")
hola.grid(row=1, column=2)
numero = Label(v1, text="No. de Control :", height=2)
numero.grid(row=2, column=1)
n1 = StringVar()
caja1 = Entry(v1, textvariable=n1)
caja1.grid(row=2, column=2)
b4 = Button(v1, text="Regresar ", command=lambda: v1.destroy())
b4.grid(row=3, column=1)
b5 = Button(v1, text="Borrar ", command=lambda: okin())
b5.grid(row=3,column=2)
def update():
def okin():
dato1 = float(caja1.get())
dato2 = caja2.get()
dato3 = caja3.get()
dato4 = caja4.get()
dato5 = caja5.get()
values = "call tecnologico.students(%s,%s,%s,%s,%s,%s)"
try:
cursor.execute(values, (dato1, dato2, dato3, dato4, dato5,'editar'))
conexion.commit()
tkMessageBox.showinfo("Mensaje", "Se Han actualizado correctamente")
caja1.delete(0, 20)
caja2.delete(0, 20)
caja3.delete(0, 20)
caja4.delete(0, 20)
caja5.delete(0, 20)
except:
tkMessageBox.showinfo("Mensaje", "Error al actualizar los datos")
def selec(click):
curItem = tab.focus()
datitos = tab.set(curItem)
caja2.delete(0, END)
caja2.insert(0, datitos["Nombre"])
caja1.delete(0, END)
caja1.insert(0, datitos["Numero de Control"])
caja3.delete(0, END)
caja3.insert(0, datitos["Apellido Paterno"])
caja4.delete(0, END)
caja4.insert(0, datitos["Apellido Materno"])
caja5.delete(0, END)
caja5.insert(0, datitos["Correo"])
v1 = Toplevel(v0)
v1.deiconify()
v1.geometry("700x500")
hola = Label(v1, text="Actualizar datos", height=2, font="Verdana 14")
hola.grid(row=1, column=1)
numero = Label(v1, text="No. de Control :", height=2)
numero.grid(row=2, column=1)
n1 = StringVar()
caja1 = Entry(v1, textvariable=n1)
caja1.grid(row=2, column=2)
nombre = Label(v1, text="Nombre : ", height=2)
nombre.grid(row=3, column=1)
n2 = StringVar()
caja2 = Entry(v1, textvariable=n2)
caja2.grid(row=3, column=2)
apellido1 = Label(v1, text="Apellido Paterno : ", height=2)
apellido1.grid(row=4, column=1)
n3 = StringVar()
caja3 = Entry(v1, textvariable=n3)
caja3.grid(row=4, column=2)
apellido2 = Label(v1, text="Apellido Materno: ", height=2)
apellido2.grid(row=5, column=1)
n4 = StringVar()
caja4 = Entry(v1, textvariable=n4)
caja4.grid(row=5, column=2)
correo = Label(v1, text="Correo : ", height=2)
correo.grid(row=6, column=1)
n5 = StringVar()
caja5 = Entry(v1, textvariable=n5)
caja5.grid(row=6, column=2)
b4 = Button(v1, text="Regresar ", command=lambda: v1.destroy())
b4.grid(row=7, column=1)
b1 = Button(v1, text="Modificar", command=lambda: okin(), width=15, height=2)
b1.grid(row=7, column=2)
tab = ttk.Treeview(v1)
tab.grid(row=8, column=1, columnspan=5)
tab["columns"] = ["Numero de Control", "Nombre", "Apellido Paterno", "Apellido Materno", "Correo"]
tab["show"] = "headings"
tab.heading("Numero de Control", text="No. de control")
tab.column("Numero de Control", minwidth=0, width=100, stretch=NO)
tab.heading("Nombre", text="Nombre")
tab.column("Nombre", minwidth=0, width=150, stretch=NO)
tab.heading("Apellido Paterno", text="Apellido Paterno")
tab.column("Apellido Paterno", minwidth=0, width=100, stretch=NO)
tab.heading("Apellido Materno", text="Apellido Materno")
tab.column("Apellido Materno", minwidth=0, width=100, stretch=NO)
tab.heading("Correo", text="Correo")
tab.column("Correo", minwidth=0, width=200, stretch=NO)
sql = "select * from alumnos"
cursor.execute(sql)
l = 0
c = 0
for row in cursor.fetchall():
tab.insert("", l, c, values=row)
l = l + 1
c = c + 1
tab.bind('<ButtonRelease-1>', selec)
def consult():
def okin():
dato1 = float(caja1.get())
values = "Select * from alumnos where num_con=%s"
try:
cursor.execute(values,(dato1))
conexion.commit()
tkMessageBox.showinfo("Mensaje", "Se Han actualizado correctamente")
caja1.delete(0, 20)
except:
tkMessageBox.showinfo("Mensaje", "Error al actualizar los datos")
v1 = Toplevel(v0)
v1.deiconify()
v1.geometry("700x400")
hola = Label(v1, text="Consular dato", height=2, font="Verdana 14")
hola.grid(row=1, column=2)
numero = Label(v1, text="No. de Control :", height=2)
numero.grid(row=2, column=1)
n1 = StringVar()
caja1 = Entry(v1, textvariable=n1)
caja1.grid(row=2, column=2)
b4 = Button(v1, text="Regresar ",height=2, command=lambda: v1.destroy())
b4.grid(row=3, column=1)
b5 = Button(v1, text="consultar ",height=2, command= okin)
b5.grid(row=3, column=2)
dato={
"user":"root",
"password":"davidmysql",
"database":"tecnologico",
"host":"127.0.0.1"
}
conexion = mysql.connector.connect(**dato)
cursor = conexion.cursor()
hola = Label(v0,text="Hola, Elija la operacion deseada", height=2, font="Verdana 14")
hola.pack()
b1 = Button(v0, text = "Insertar", command = insert,width=15, height=2)
b1.pack()
b2 = Button(v0, text = "Borrar", command = delete,width=15, height=2)
b2.pack()
b3 = Button(v0, text = "Modificar", command = update,width=15, height=2)
b3.pack()
b4 = Button(v0, text = "Consultar Tabla", command = table,width=15, height=2)
b4.pack()
v0.mainloop()
No hay comentarios:
Publicar un comentario