Обсуждение: Foreign keys / MATCH FULL, PARTIAL, etc.
I don't know of how much help this is going to be, but the anwer to the question // MATCH FULL/PARTIAL missing; where is this stored?!? posed in pgForeignKey.cpp line 45 is: In pg_catalog.pg_trigger.tgargs. It is the third argument (zero based) to the ri-triggers, or more precisely the RI_MATCH_TYPE_ARGNO'th, cf. include/commands/trigger.h in the PostgreSQL 8.0 beta 3 source (7.4 as well). HTH, Alex
> -----Original Message----- > From: pgadmin-hackers-owner@postgresql.org > [mailto:pgadmin-hackers-owner@postgresql.org] On Behalf Of > Alexander Borkowski > Sent: 11 October 2004 08:31 > To: pgadmin-hackers@postgresql.org > Subject: [pgadmin-hackers] Foreign keys / MATCH FULL, PARTIAL, etc. > > I don't know of how much help this is going to be, but the > anwer to the question > > // MATCH FULL/PARTIAL missing; where is this stored?!? > > posed in pgForeignKey.cpp line 45 is: In > pg_catalog.pg_trigger.tgargs. > It is the third argument (zero based) to the ri-triggers, or > more precisely the RI_MATCH_TYPE_ARGNO'th, cf. > include/commands/trigger.h in the PostgreSQL 8.0 beta 3 > source (7.4 as well). Ahh, thanks Alex. Iirc, that comment was written in 7.3 days when the dcos said something like "There's MATCH FULL and MATCH PARTIAL which isn't implemented yet", so it was probably ignored. Of course, there was also MATCH SIMPLE, but it didn't have a name then, and cursory scan of the docs probably wouldn't have registered it's existance :-( I'll add a note to the todo. Thanks, Dave.
Dave Page wrote: > > > >>-----Original Message----- >>From: pgadmin-hackers-owner@postgresql.org >>[mailto:pgadmin-hackers-owner@postgresql.org] On Behalf Of >>Alexander Borkowski >>Sent: 11 October 2004 08:31 >>To: pgadmin-hackers@postgresql.org >>Subject: [pgadmin-hackers] Foreign keys / MATCH FULL, PARTIAL, etc. >> >>I don't know of how much help this is going to be, but the >>anwer to the question >> >> // MATCH FULL/PARTIAL missing; where is this stored?!? >> >>posed in pgForeignKey.cpp line 45 is: In >>pg_catalog.pg_trigger.tgargs. >>It is the third argument (zero based) to the ri-triggers, or >>more precisely the RI_MATCH_TYPE_ARGNO'th, cf. >>include/commands/trigger.h in the PostgreSQL 8.0 beta 3 >>source (7.4 as well). > > > Ahh, thanks Alex. Iirc, that comment was written in 7.3 days when the > dcos said something like "There's MATCH FULL and MATCH PARTIAL which > isn't implemented yet", so it was probably ignored. Of course, there was > also MATCH SIMPLE, but it didn't have a name then, and cursory scan of > the docs probably wouldn't have registered it's existance :-( AFAIR at the moment of implementing that part the 7.3 doc didn't fully document pg_constraint. The correct answer to this question now is pg_constraint.confmatchtype. We'll fix this for 1.3/1.4. It requires dialog changes, so this has to wait a little. Thanks for pointing out this missing option, we'd probably would have missed it up to pgsql 2030 :-) Regards, Andreas
> -----Original Message----- > From: Andreas Pflug [mailto:pgadmin@pse-consulting.de] > Sent: 11 October 2004 14:36 > To: Dave Page > Cc: Alexander Borkowski; pgadmin-hackers@postgresql.org > Subject: Re: [pgadmin-hackers] Foreign keys / MATCH FULL, > PARTIAL, etc. > > We'll fix this for 1.3/1.4. It requires dialog changes, so > this has to wait a little. Thanks for pointing out this > missing option, we'd probably would have missed it up to > pgsql 2030 :-) Does our roadmap go up that far? Maybe I ought to start thinking about some new graphics... /D
Andreas Pflug wrote: >>> // MATCH FULL/PARTIAL missing; where is this stored?!? > AFAIR at the moment of implementing that part the 7.3 doc didn't fully > document pg_constraint. The correct answer to this question now is > pg_constraint.confmatchtype. Yep, that is a lot better and easier to access too. My enthusiasm got me carried away after I found my "answer", so I didn't do any further investigation. Sorry. > We'll fix this for 1.3/1.4. Thanks for that! > Thanks for pointing out this missing option, we'd > probably would have missed it up to pgsql 2030 :-) I just happend to need it and wondered why it wasn't there. And it is very reassuring to know that there are no plans to abandon this excellent software in the near future :-) Regards, Alex