Páginas: [1]
|
 |
|
Autor
|
Tema: Problema Con Python+Mysql (insert) (Leído 189 veces)
|
b0h
Desconectado
Mensajes: 5
|
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 | | +-----------+-------------+------+-----+---------+-------+
|
|
|
|
|
En línea
|
|
|
|
Flakito81
Desconectado
Mensajes: 350
|
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: 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)) Suerte!
|
|
|
|
|
En línea
|
|
|
|
b0h
Desconectado
Mensajes: 5
|
ya encontre la solucion es poner db.commit() debajo del execute  gracias por tu respuesta.
|
|
|
|
|
En línea
|
|
|
|
|
Páginas: [1]
|
|
|
|