Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 10-12-2007 23:57:35

tlucas.bzh
Nouveau membre
Date d'inscription: 10-12-2007
Messages: 4

[résolu][Zend_Db_Table_Exception] A table must have a primary key

Bonjour à tous,

Je teste l'interrogation d'une table oracle 10g qui possède bien une PK et  j'obtiens l'erreur suivante:

Fatal error: Uncaught exception 'Zend_Db_Table_Exception' with message 'A table must have a primary key, but none was found' in /var/www/zend/library/Zend/Db/Table/Abstract.php

Si quelqu'un as une petite idée...

Merci

Dernière modification par tlucas.bzh (11-12-2007 19:55:12)

Hors ligne

 

#2 11-12-2007 10:03:18

Seb
Membre
Lieu: Thuin (Belgique)
Date d'inscription: 19-11-2007
Messages: 62
Site web

Re: [résolu][Zend_Db_Table_Exception] A table must have a primary key

De quel type est ton champ dans ta table ? Serial ?


Sébastien Bervoets

Hors ligne

 

#3 11-12-2007 10:50:36

tlucas.bzh
Nouveau membre
Date d'inscription: 10-12-2007
Messages: 4

Re: [résolu][Zend_Db_Table_Exception] A table must have a primary key

Bonjour Seb,

Il s'agit d'une PK sur un champ id de type number

Code:

Create matable (
  id number, 
  champ1 varchar2(100)
);

alter table matable add constraint pk_matable primary key(id);

pas de séquence (auto-incrementation) sur ce champ, je teste en faisant les insert à la mano

Dernière modification par tlucas.bzh (11-12-2007 11:51:38)

Hors ligne

 

#4 11-12-2007 12:07:51

Seb
Membre
Lieu: Thuin (Belgique)
Date d'inscription: 19-11-2007
Messages: 62
Site web

Re: [résolu][Zend_Db_Table_Exception] A table must have a primary key

Dans ton code, utilises-tu Zend_Db_Table ?

Regarde un peu ici on en parle en point 10.5.2.2


Sébastien Bervoets

Hors ligne

 

#5 11-12-2007 18:46:00

tlucas.bzh
Nouveau membre
Date d'inscription: 10-12-2007
Messages: 4

Re: [résolu][Zend_Db_Table_Exception] A table must have a primary key

Ok Merci Seb, Cela fonctionne nickel
J'utilise en effet Zend_Db_Table et j'avais oublié:

Code:

 protected $_primary = 'ID';

et il faut par ailleurs passer tous les noms de champs en majuscule dans le code.

Un grand merci.
Je continue mes tests ...

Hors ligne

 

#6 20-12-2007 00:21:26

Psykocrash
Membre
Date d'inscription: 23-11-2007
Messages: 28

Re: [résolu][Zend_Db_Table_Exception] A table must have a primary key

Juste pour un complément d'information (pour ceux qui passeraient par là) :

Every table class must know which column(s) can be used to address rows uniquely. If no primary key column(s) are specified in the table class definition or the table constructor arguments, or discovered in the table metadata provided by describeTable(), then the table cannot be used with Zend_Db_Table.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages