Bonjour,
J'ai créé le type suivant :
Ensuite je crée la fonction suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 CREATE TYPE proeco AS ( nom text, prenom text, matricule int4, hash text);
Cela fonctionne sans souci, mais lorsque c'est vide, j'ai l"erreur suivante, pourtant il me semble être cohérent par rapport à la doc.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 DROP FUNCTION test(); CREATE FUNCTION test() RETURNS SETOF proeco AS $$ rv = plpy.execute("SELECT nom,prenom,matricule,hash FROM users") d = rv.nrows(); if d > 1: return rv[0:5] nom = "toto"; prenom = "toto"; matricule = 123; hash = "hash"; return (nom,prenom,matricule,hash) $$ LANGUAGE plpythonu;
voici le message d'erreur :
Merci de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Query execution failed Motif: SQL Error [22P02]: ERROR: malformed record literal: "toto" Détail : Missing left parenthesis. Où : while creating return value PL/Python function "test"
Partager