Python - Python sqlite3 error al implementar sentencia INSERT

   
Vista:

Python sqlite3 error al implementar sentencia INSERT

Publicado por Gerardo (3 intervenciones) el 10/08/2016 03:26:17
Hola que tal, tengo un problema con el siguiente codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/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
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Python sqlite3 error al implementar sentencia INSERT

Publicado por xve (1232 intervenciones) el 10/08/2016 13:59:38
Hola Gerardo, es exactamente lo que comentas... ese campo es único (UNIQUE), por lo que no se puede repetir el id... ten por seguro que ya hay un registro con el id 1!!!
Haz una búsqueda y veras que si existe!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Python sqlite3 error al implementar sentencia INSERT

Publicado por mag55 (3 intervenciones) el 12/08/2016 19:26:12
Hola .... y como realizo dicha búsqueda y si esto es así no tengo que poner nada en ese campo, es decir, debo llenar el resto de los campos menos este?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Python sqlite3 error al implementar sentencia INSERT

Publicado por xve (1232 intervenciones) el 12/08/2016 21:11:11
Hola, eso depende de si el campo es "auto increment"... si tiene esa propiedad, no hace falta que la pongas...

Para ver si esta ese registro...
1
select * from compañia

Te recomiendo no utilizas acentos, eñes o cualquier carácter extraño!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar