Título: Problema Con Python+Mysql (insert) Publicado por: b0h en 12 Marzo 2008, 06:33 am por favor necesito ayuda tengo el siguiente codigo y no se que anda mal, el programa no me tira error de compilacion ni nada parece como que funciona bien pero cuando hago un select * from no veo los datos que inserte. aqui esta el codigo:
def agregar(): matricula= raw_input ("Digite La Matricula: ") nombre = raw_input('Digite el Nombre: ') apellido= raw_input('Digite Apellido: ') materia1= raw_input('Materia 1: ') materia2= raw_input('Materia 2: ') materia3= raw_input('Materia 3: ') materia4= raw_input('Materia 4: ') materia5= raw_input('Materia 5: ') materia6= raw_input('Materia 6: ') cursor.execute("""INSERT INTO est (matricula, nombre, apellido, mat1, mat2, mat3, mat4, mat5, mat6) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)""", (matricula, nombre, apellido, materia1, materia2, materia3, materia4, materia5, materia6)) print("Guardado") cuando uso el cursor.execute con select y otros me funciona pero no con insert . DATOS DE LA TABLA: mysql> describe est -> ; +-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | matricula | varchar(10) | YES | | NULL | | | nombre | varchar(50) | YES | | NULL | | | apellido | varchar(50) | YES | | NULL | | | mat1 | varchar(50) | YES | | NULL | | | mat2 | varchar(50) | YES | | NULL | | | mat3 | varchar(50) | YES | | NULL | | | mat4 | varchar(50) | YES | | NULL | | | mat5 | varchar(50) | YES | | NULL | | | mat6 | varchar(50) | YES | | NULL | | +-----------+-------------+------+-----+---------+-------+ Título: Re: Problema Con Python+Mysql (insert) Publicado por: Flakito81 en 12 Marzo 2008, 19:38 pm Es por la forma en la q envias el mensaje. Lo correcto es usar comillas simples ( ' ') al principio y al final de los valores (VALUES) que vas a agregar:
Código
Suerte! Título: Re: Problema Con Python+Mysql (insert) Publicado por: b0h en 16 Marzo 2008, 16:26 pm ya encontre la solucion es poner db.commit() debajo del execute :)
gracias por tu respuesta. |