Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 27-02-2013 12:51:09

Bouks
Membre
Lieu: Paris
Date d'inscription: 31-08-2012
Messages: 241

Select et limit

Je teste la librairie Sql du Zend et j'ai un petit soucis.

Je construis un select de type

Code:

[lang=php]
$sql = Factory::get('Zend\Db\Sql\Select')
                ->from('matable')
                ->columns(array('*'))
                ->where(array('property' => 'value'))
                ->limit(1);

et ce f... Select me génère la requête SQL suivante :

Code:

[lang=sql]
SELECT `matable`.* FROM `matable` WHERE `property` = 'value' LIMIT '1'

Quelqu'un a-t-il déjà rencontré ce problème de quote dans le limit ?

v 2.0.7

Dernière modification par Bouks (27-02-2013 12:59:05)


22914720

Hors ligne

 

#2 27-02-2013 14:07:53

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Select et limit

Hmm bizarre, je ne l'utilise pas mais j'ai vu passé dans les chanelog des améliorations sur Zend\Db donc je dirais essaies de voir si tu peux pas passer en 2.1.3.

Hors ligne

 

#3 27-02-2013 14:15:20

Bouks
Membre
Lieu: Paris
Date d'inscription: 31-08-2012
Messages: 241

Re: Select et limit

Malheureusement

http://www.z-f.fr/forum/viewtopic.php?id=8501

Quant à mettre à jour uniquement ce composant, n'étant pas habitué à composer, j'ai abandonné la gestion des paquets et dépendances.
Ca me rangeait les classes dans des dossiers et des sous-dossiers avec des noms à rallonge (type zend-maclasse etc.), pas comme quand on télécharge l'archive de zf2 en tar.gz en tout cas.


22914720

Hors ligne

 

#4 27-02-2013 14:20:14

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Select et limit

C'est bizarre parce que composer fait exactement la même chose que lorsque tu récupères l'archive du ZF2. Obligatoirement ça va te créer une arborescence qui est peut être un peu plus grande pour respecter les "normes" et "convention" données par le ZendSkeletonApplication mais c'est tout.

Concernant la régression c'était pas non plus bien méchant, je l'ai eu et il avait lieu lorsqu'une session existait déjà donc il suffisait de supprimer le cookie et c'était bon. Sur un site en développement ça n'a pas trop d'impact.

Hors ligne

 

#5 27-02-2013 14:30:07

Bouks
Membre
Lieu: Paris
Date d'inscription: 31-08-2012
Messages: 241

Re: Select et limit

Pour composer, peut-être ai-je eu ce problème parce que je récupérais le zf2 au lieu du skeleton ?

Pour la régression, j'ai le problème dans mes tests unitaires, donc pas de cookie...


22914720

Hors ligne

 

#6 27-02-2013 14:35:25

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Select et limit

Arf bah là pas de solution.

Normalement avec composer tu récupères en suivant la méthode du quickstart le skeleton. Et c'est ensuite que tu vas récupérer le ZF2 et tes modules que tu as configuré. C'est vraiment très simple ça fonctionne comme maven2 pour java big_smile

Hors ligne

 

#7 27-02-2013 18:18:10

Bouks
Membre
Lieu: Paris
Date d'inscription: 31-08-2012
Messages: 241

Re: Select et limit

J'ai créé une issue sur github.

En attendant je vais surcharger la classe.


22914720

Hors ligne

 

#8 28-02-2013 19:27:44

Frederic Bouchery
Nouveau membre
Date d'inscription: 11-01-2012
Messages: 6

Re: Select et limit

Pourquoi tu n'écris pas le SQL directement ?

Hors ligne

 

#9 01-03-2013 10:00:35

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Select et limit

Dans ce cas là on perd la couche d'abstraction apportée par Zend\Db

Hors ligne

 

#10 01-03-2013 11:43:56

Bouks
Membre
Lieu: Paris
Date d'inscription: 31-08-2012
Messages: 241

Re: Select et limit

Frederic Bouchery a écrit:

Pourquoi tu n'écris pas le SQL directement ?

Parce que je ne veux pas passer pour un ringard smile

Pas grave j'ai surchargé le Select.
Au passage il y a bien un selectDecorator qui est bon pour mysql mais il n'est pas appelé par le Zend\Db\Select
même en précisant getSqlString(new Zend\Db\Adapter\Platform\Mysql());

Ca ne doit fonctionner que si on passe par l'adapter.

Problème de design à mon avis.

Et puis je n'utilise pas l'adapter Zend... il y a PDO qui est largement suffisant, pas besoin d'en rajouter une couche smile


22914720

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