[ Foro de Python ]

Python sqlite3 error al implementar sentencia INSERT

10-Aug-2016 04:05
Invitado (mag55)
1 Respuestas

Hola que tal, tengo un problema con el siguiente codigo:

 
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
 
import sqlite3 
 
conex = sqlite3.connect('test.db')
print "La base se abrio correctamente"
 
# cursor = conex.cursor()
 
conex.execute("""CREATE TABLE IF NOT EXISTS compañia
	(id INTEGER PRIMARY KEY,
	nombre TEXT NOT NULL,
	edad INT(2) NOT NULL,
	direccion CHAR(50));""")
print "La tabla se creo correctamente"
 
conex.execute("""INSERT INTO compañia(id, nombre, edad, direccion)
		VALUES(1,'Gerardo', 38, 'Costanera 123');""")
conex.commit()
print"Se grabo correctamente"
 
conex.close()
 


Al ejecutar este codigo me tira el siguiente error:

Traceback (most recent call last):
File "base.py", line 19, in <module>
VALUES(1,'Gerardo', 38, 'Costanera 123');""")
sqlite3.IntegrityError: UNIQUE constraint failed: compañia.id

Estuve leyendo y al parecer este error es porque en el campo id se estan repitiendo datos o algo por el estilo pero es la unica fila que inserte .... les agradecere si alguien me puede solucionar este problema porque hace rato que estoy dando vueltas con esto .... saludos y gracias


25-Aug-2016 19:09
Nacho Cabanes (+32)

Si lanzas ese programa dos veces, la segunda vez ya existiría el dato. ¿No puede ser ese el problema?






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)