Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 03/03/2010 11:32:17
- manu f
- Membre
Erreur : ANY/ALL - lors d'une requête faites par symfony
Bonjour,
J'ai un projet à réaliser avec symfony + PostgreSQL, mon problème est que symfony doit exécuter cette requête :
SELECT
a.attnum,
a.attname AS FIELD,
t.typname AS type,
format_type(a.atttypid, a.atttypmod) AS complete_type,
a.attnotnull AS isnotnull,
(SELECT 't'
FROM pg_index
WHERE c.oid = pg_index.indrelid
AND a.attnum = ANY (pg_index.indkey)
AND pg_index.indisprimary = 't'
) AS pri,
(SELECT pg_attrdef.adsrc
FROM pg_attrdef
WHERE c.oid = pg_attrdef.adrelid
AND pg_attrdef.adnum=a.attnum
) AS DEFAULT
FROM pg_attribute a, pg_class c, pg_type t
WHERE c.relname = 'acces'
AND a.attnum > 0
AND a.attrelid = c.oid
AND a.atttypid = t.oid
ORDER BY a.attnum
Et apparemment le problème viendrait de PostgreSQL qui n'arrive pas à exécuter la requête ci-desssus.
Erreur lors de l'exécution de la commande symfony :
SQLSTATE[42809]: Wrong object type: 7 ERREUR: op ANY/ALL (tableau) requiert un tableau sur le côté droit. Failing Query: ...
Erreur lors de l'exécution de la requête sous phpPgAdmin :
ERREUR: op ANY/ALL (tableau) requiert un tableau sur le côté droit
Avez vous des infos. ou une solution à me proposer pour palier ce problème ? (d'autant plus que je dois vous avouer ne pas trop comprendre le sens du message d'erreur)
Note : Version de PostgreSQL 8.0.13
Dernière modification par manu f (03/03/2010 11:39:42)
Hors ligne
#2 03/03/2010 11:39:37
- gleu
- Administrateur
Re : Erreur : ANY/ALL - lors d'une requête faites par symfony
La requête fonctionne très bien pour moi sur une version 8.4. Quelle version de PostgreSQL utilisez-vous ?
Guillaume.
Hors ligne
#3 03/03/2010 11:40:39
- manu f
- Membre
Re : Erreur : ANY/ALL - lors d'une requête faites par symfony
Je viens juste d'éditer en mettant la version
J'utilise la version 8.0.13, ca viendrait donc de là le problème
Dernière modification par manu f (03/03/2010 12:08:46)
Hors ligne
#4 03/03/2010 11:55:32
- gleu
- Administrateur
Re : Erreur : ANY/ALL - lors d'une requête faites par symfony
Il n'existe pas de fonction de conversion de int2vector vers un tableau d'entiers, contrairement à la 8.4. Après test, il s'avère que ça fonctionne à partir de la version 8.1
Pour informations, vous avez intérêt à prévoir très rapidement une migration de votre serveur 8.0. À partir de juillet 2010 (donc dans 4 mois), la version 8.0 ne sera plus maintenue. Donc les bugs et les failles de sécurité ne seront plus corrigés pour cette version. Je pense que, plutôt que de corriger la requête de symphony, il serait hautement préférable de songer à migrer de version de PostgreSQL.
Guillaume.
Hors ligne
#5 03/03/2010 12:02:32
- manu f
- Membre
Re : Erreur : ANY/ALL - lors d'une requête faites par symfony
Merci beaucoup pour votre réponse rapide
Hors ligne