That is not a sin to have never used foreign keys, but I think you are
mixing apples and oranges. It sounds to me you have 2 questions. One is
how do I put data into tables and the other is how can I, using SQL
display a new table from colums you filled.

        The first question is answered I think. Sounds like you are
entering data properly, but you might want to record a key column with
every entry. This may not be possible if the data is being keyed on a web
page.

        Since your filling more than one table there must be a key column
in every table. Then an SQL "select from and" calls will work. Of course
if you can record date and time, that is a classic key. Tricky to use as I
discovered. 

On Sun, 10 Sep 2000, Neil Conway wrote:

> I'm having a bit of difficulty understanding the correct usage of
> foreign keys (I've never used them before, excuse my ignorance).
> Here's a situation where I'm trying to figure out how/if they
> should be used:
> 
> One database has a group of tables with intereferential data.
> For example:
> 
> CREATE TABLE messages (
>     /* ... */
>     poster  INT4 NOT NULL,
>     thread  INT4 NOT NULL
> );
> 
> CREATE TABLE users (
>     id      serial
>     /* ... */
> );
> 
> CREATE TABLE threads (
>     id      serial
>     /* ... */
> );
> 
> messages.poster should refer to a valid (and unique) users.id - that
> is the person who posted the message. If there is no users.id with
> the same value as every messages.poster , there is a problem. The
> same applies to message.thread and threads.id .
> 
> How do I check that this data is being entered correctly? Is this
> a situation where I should be using foreign keys? Or can this only
> be done with external logic (i.e. the application doing the inserts
> should check first that the data it's receiving is valid).
> 
> Thanks in advance,
> 
> Neil
> 
> -- 
> Neil Conway <[EMAIL PROTECTED]>
> Get my GnuPG key from: http://klamath.dyndns.org/mykey.asc
> Encrypted mail welcomed
> 
> We hang the petty thieves and appoint the great ones to public office.
>         -- Aesop
> 

Yours Truly,

         - Karl F. Larsen, [EMAIL PROTECTED]  (505) 524-3303  -

Reply via email to