pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Richard Huxton <dev@archonet.com>
To: Denis BUCHER <dbucherml@hsolutions.ch>
Cc: pgsql-sql@postgresql.org
Subject: Re: Problem with return type of function ???
Date: Thu, 22 Oct 2009 15:21:41 +0100
Message-ID: <4AE06A75.3040803@archonet.com> (raw)
In-Reply-To: <4AE0655C.80400@hsolutions.ch>
References: <4AE042AF.9020507@hsolutions.ch>
	<4AE044C6.8010306@archonet.com>
	<4AE046B7.5070805@hsolutions.ch>
	<4AE05DD0.7010809@archonet.com>
	<4AE05E55.4000500@hsolutions.ch>
	<4AE06221.5040403@archonet.com>
	<4AE0655C.80400@hsolutions.ch>

Denis BUCHER wrote:
> Richard Huxton a écrit :
>> The other thing you could try is printing out row before returning it:
>>   RAISE NOTICE 'row = %', row;
>>   RETURN NEXT ROW;
>> It might be you've not got what you were expecting.
> 
> Thanks a lot, good idea...
> 
> But it looks good :

Hmm...

>> SELECT * FROM rma.test ('19G256259');
>> NOTICE:  row = (12066602,19G256259,170224,PN6405B,2009-09-22,"FORERUNNER 405 NOIR",2009-09-22,15090,14748)
>> ERREUR:  wrong record type supplied in RETURN NEXT
>> CONTEXTE : PL/pgSQL function "test" line 12 at return next
>>
>> \d rma.serial_number
>>                                        Table « rma.serial_number »
>>    Colonne   |         Type          |                           Modificateurs
>> -------------+-----------------------+-------------------------------------------------------------------
>>  sn_id       | bigint                | not null default nextval('rma.serial_number_sn_id_seq'::regclass)
>>  sn          | character varying(30) |
>>  no_client   | integer               |
>>  no_art_bw   | character varying(11) |
>>  sn_fc_date  | date                  |
>>  desc_fr     | character varying(40) |
>>  sn_cm_date  | date                  |
>>  no_facture  | integer               |
>>  no_commande | integer               |

I was wondering if maybe there was a bug to do with domains or complex
column types, but there's nothing out of the ordinary here.

OK - can you generate a test script with just CREATE TABLE, CREATE
FUNCTION, one INSERT and a function-call? I'll try and recreate it here.
Oh, and what version of PostgreSQL are we talking about?

-- 
  Richard Huxton
  Archonet Ltd



view thread (10+ messages)  latest in thread

Message-ID: <4AE06A75.3040803@archonet.com>
Permalink:  ../4AE06A75.3040803@archonet.com/
Also on:    postgresql.org/message-id/4AE06A75.3040803@archonet.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: dev@archonet.com, dbucherml@hsolutions.ch
  Subject: Re: Problem with return type of function ???
  In-Reply-To: <4AE06A75.3040803@archonet.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox