Hi Fulvio,

> I have two tables, for example TableA and TableB.
>
> Each row of TableA contains a foreign key to a row of TableB.
> This a 1 to 1 relation, so each row of TableA is linked to one different
> row of TableB.
> The foreign key field can also be NULL, in this case the TableA row is
> not connected to a TableB row.
>
> All TableB rows depend logically on TableA rows, so all TableB rows
> should be linked by a TableA row.
>
> I would like to check for program errors during development, so I would
> like to know if there are "orphans" TableB rows.
>
> May somebody suggest me a good way to find the rows in TableB that are
> not connected from any row in TableA?

Why not reverse the link then, and make sure the foreign key field in 
TableB is NOT NULL?

But if that's not an option, you can periodically check for orphans with

select <columns> from TableB b where not exists
   (select * from TableA a where a.<fk> = b.<target>)


Kind regards,
Paul Vinkenoog



------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Visit http://www.firebirdsql.org and click the Resources item
on the main (top) menu.  Try Knowledgebase and FAQ links !

Also search the knowledgebases at http://www.ibphoenix.com 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/firebird-support/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/firebird-support/join
    (Yahoo! ID required)

<*> To change settings via email:
    firebird-support-dig...@yahoogroups.com 
    firebird-support-fullfeatu...@yahoogroups.com

<*> To unsubscribe from this group, send an email to:
    firebird-support-unsubscr...@yahoogroups.com

<*> Your use of Yahoo Groups is subject to:
    http://info.yahoo.com/legal/us/yahoo/utos/terms/

Reply via email to