Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'ai cette erreur SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'PRIMARY'' lorsque je veux enregister des données de formulaire sachant que j'ai un table
CREATE TABLE IF NOT EXISTS `disc` ( `userIduser` int(11) NOT NULL, `idDisc` char(12) NOT NULL, PRIMARY KEY (`idDisc`), KEY `userIduser` (`userIduser`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
class Disc_Model_DbTable_Disc extends Zend_Db_Table { protected $_name = 'disc'; protected $_primary = 'idDisc'; public function addDiscount(array $data) { if(!empty($data)) { $row = $this->createRow(); $row->idDisc = $data['idDisc']; $row->dateC = $data['dateC']; try { return $row->save(); } catch (Exception $e) { return $e; } } return false; }
Merci pour votre réponse
Hors ligne
Bonsoir,
L'erreur que tu as vient du fait que tu essaies d'insérer une valeur qui existe déjà dans ta base de données pour le champ idDisc (ta primary).
Hors ligne
Bonjour,
Comme le signale kindy, le problème vient de la tentative d'insérer une ligne avec un ID déjà existant.
Plus exactement, ton erreur se situe dans le fait que tu fais ceci :
[lang=php] $row = $this->createRow(); $row->idDisc = $data['idDisc'];
la méthode "createRow()" fait forcément une insertion, donc si "$row->idDisc" existe déjà, il y a erreur !
Tu devrais donc vérifier la (non-)présence de cet ID dans ta base et faire une insertion ou une modification selon le cas.
Dernière modification par f.garoby (20-06-2011 09:02:17)
Hors ligne
Bonjour,
je debute dans le domaine, et je rencontre le même probleme ci-dessus avec magento
j'ai installé un sous domaine et creer une autre base de donnée que le domaine principal est-ce la cause du probleme ?
Si qlq peut me filer un cour de pouce ? pour agir sur la base
J'ai un serveur ovh centos, linux, plesk
merci d'avance
bye
Hors ligne
Je transmets le message erreur
Rockettheme c'est une template que j'ai transferer par dessus l'install de base, mon sous domaine c'est l'install avec la templete integrer pour m'aider a parametrer mon domaine principale
merci
Error in file: "/var/www/vhosts/*********com/httpdocs/app/code/community/Rockettheme/ExtensionSetup/sql/extensionsetup_setup/mysql4-install-1.0.php" - SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '99' for key 'PRIMARY'
Hors ligne
Pages: 1