Re: grabbing from multiple tables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



GOLD!
Thank you.

Karl


On May 1, 2010, at 4:12 AM, Peter Lind wrote:

On 1 May 2010 11:00, Karl DeSaulniers <karl@xxxxxxxxxxxxxxx> wrote:
Thank you Peter... again.. :)
Which would be the source field and which the target field?

You place the constraint on the table that has the foreign key. Using
your example:

Table 1 = products
* id = primary key

Table 2 = productoptions
* product_id = foreign key

On table 2 you would place a constraint like this (in SQL):
CONSTRAINT FOREIGN KEY (product_id) REFERENCES products (id) ON DELETE CASCADE

This will delete any rows in table 2 if a matching row in table 1 is
deleted (i.e. if you delete a product, all rows in table 2 matching
options to products will be deleted as well, if they reference the
deleted product).

If instead you want to make sure that no product can be deleted while
it still has options attached, use this:

CONSTRAINT FOREIGN KEY (product_id) REFERENCES products (id) ON DELETE NO ACTION

I don't really know how this translates into your "source" and
"target" but I would guess source means the primary key on table 1 and
target means the foreign key on table 2 ... though, thinking about it,
it would make at least as much sense the other way round. Best see if
you can find some documentation to translate those terms into
something SQL-centric

Regards
Peter

--
<hype>
WWW: http://plphp.dk / http://plind.dk
LinkedIn: http://www.linkedin.com/in/plind
Flickr: http://www.flickr.com/photos/fake51
BeWelcome: Fake51
Couchsurfing: Fake51
</hype>

Karl DeSaulniers
Design Drumm
http://designdrumm.com


--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux