import MySQLdb
#Conectar a la base de datos
try:
db = MySQLdb.connect("localhost","root","","gesmol")
cursor = db.cursor()
except:
print "No se ha podido esteblecer conexion con el servidor."
raw_input()
exit
#Funcion ingresar
def ingresar():
print "********** ALTA DE CLIENTES **********: \n"
codigo = int(raw_input("Ingrese el Codigo del Cliente: "))
nombre = raw_input("Ingrese el Nonbre del Cliente: ")
poblacion = raw_input("Ingrese la Población del Cliente: ")
cif = int(raw_input("Ingrese el CIF del Cliente: "))
sql = "INSERT INTO clientes(codigo, nombre, poblacion, cif)\
VALUES('%s','%s','%s','%s')" % \
(codigo, nombre, poblacion, cif)
try:
cursor.execute(sql) #Ejecuta los cambios en la base de datos
db.commit() #Confirma los cambios en la base de datos
except:
print "\nSe ha producido un error durante la ejecucion"
db.rollback() #deshace lo hecho
RegresarMenu()
#Funcion listar
def listar():
cursor = db.cursor()
sql = "SELECT * FROM clientes"
try:
cursor.execute(sql)
resultados = cursor.fetchall() #muestra la fila
for row in resultados:
print "Codigo; " , row[0]
print "Nombre: " , row[1]
print "Poblacion:" , row[2]
print "CIF: " , row[3]
resultados = cursor.fetchall()
except:
print "No hay registros"
RegresarMenu()
#Consultar por nombre
def consultarNombre():
nombre = raw_input("Ingrese el nombre del cliente ")
sql = "SELECT * FROM clientes WHERE Nombre = '%s'" %(nombre)
try:
cursor.execute(sql)
resultados = cursor.fetchall()
for row in resultados:
print "Codigo: " , row[0]
print " Nombre: " , row[1]
print "Poblacion:" , row[2]
print "CIF: " , row[3]
resultados = cursor.fetchall()
except:
print "No exite un Cliente con este nombre"
RegresarMenu()
#modificar
def modificar():
codigo = int(raw_input("Ingrese el codigo del cliente "))
sql = "SELECT * FROM clientes WHERE codigo = '%s'" %(codigo)
try:
cursor.execute(sql)
resultados = cursor.fetchall()
for row in resultados:
print "Codigo: " , row[0]
print "Nombre: " , row[1]
print "Poblacion: " , row[2]
print "CIF: " , row[3]
except:
print "Error al modificar"
print "Que quieres modificar? "
print "1 - Nombre "
print "2 - Poblacion"
print "3 - CIF"
op=raw_input("")
if op =="1":
nombre=int(raw_input("Escribe el nuevo Nombre: "))
sql = "UPDATE clientes SET nombre = '%s' WHERE codigo = '%s' " %(nombre, codigo)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
if op =="2":
poblacion=int(raw_input("Escribe la nueva Poblacion: "))
sql = "UPDATE clientes SET poblacion = '%s' WHERE codigo = '%s' " %(poblacion, codigo)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
if op =="3":
cif=int(raw_input("Escribe el nuevo CIF: "))
sql = "UPDATE clientes SET cif = '%s' WHERE codigo = '%s' " %(cif, codigo)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
def RegresarMenu():
print "------------------------------------------------------------"
raw_input("\nPresion cualquier tecla para regresar al menu anterior...")
Menu()
#MENU6
def Menu():
print """
----------------------------------------------------------------
Opciones disponibles
----------------------------------------------------------------
1. - Alta de Clientes
2. - Listado de Clientes
3. - Consultar de un cliente por nombre.
4 - Modificar un cliente.
5. - Finalizar el programa.
-----------------------------------------------------------------
"""
try:
opcion = int(raw_input("\n Ingrese una opción "))
except:
print "\nError: El valor ingresado no es de tipo numerico, por favor vuelva a intentarlo"
RegresarMenu()
try:
if opcion == 1:
ingresar()
elif opcion == 2:
listar()
elif opcion == 3:
consultarNombre()
elif opcion == 4:
modificar()
elif opcion == 5:
print "El programa se esta cerrando..."
try:
db.close()
exit()
except:
exit()
else:
print "Error"
RegresarMenu()
except:
print "\nError Final"
RegresarMenu()
Menu()