From: Steve Haack on
I have a field called tblPeople. It has an AutoNumber field as its PK, it has
a field called ID which is a text field, indexed (no dupes).

I have another table called tblEvents. In tblEvents I have amongst others,
two fields, Manager and Director. I am trying to create relationships between
tblEvents.Manager and tblPeople.ID, and also between tblEvents.Director and
tblPeople.ID. I have done that.

What I can't do though, is set Referential Integrity with Cascading Updates
so that if a person's ID changes (which it can, since it is an ID Badge
Number) it updates the records in tblEvents.

Any ideas?
From: Gina Whipp on
Steve,

Ummm, do you get a message? What happens when you try?

I'm going to make a suggestion here... I would have set up the table
differently...

tblPeople
pPeopleID (PK - Autonumber)
pBadgeID (Set to no duplicates but I can change when I like)

tblEvents
eEventID (PK)
eDirector (FK-linked to pPeopleID)
eManager (FK-linked to pPeopleID)

The above way allows you to set Referential Integrity without worrying about
Cascading Updates. A Primary Key should be used to relate records and you
should not care what it is. Okay, enough with my two cents worth!

--
Gina Whipp

"I feel I have been denied critical, need to know, information!" - Tremors
II

http://www.regina-whipp.com/index_files/TipList.htm

"Steve Haack" <SteveHaack(a)discussions.microsoft.com> wrote in message
news:1BD0DBA1-593B-4327-81DD-BC1858A6915A(a)microsoft.com...
>I have a field called tblPeople. It has an AutoNumber field as its PK, it
>has
> a field called ID which is a text field, indexed (no dupes).
>
> I have another table called tblEvents. In tblEvents I have amongst others,
> two fields, Manager and Director. I am trying to create relationships
> between
> tblEvents.Manager and tblPeople.ID, and also between tblEvents.Director
> and
> tblPeople.ID. I have done that.
>
> What I can't do though, is set Referential Integrity with Cascading
> Updates
> so that if a person's ID changes (which it can, since it is an ID Badge
> Number) it updates the records in tblEvents.
>
> Any ideas?


From: John W. Vinson on
On Tue, 1 Dec 2009 19:17:01 -0800, Steve Haack
<SteveHaack(a)discussions.microsoft.com> wrote:

>I have a field called tblPeople. It has an AutoNumber field as its PK, it has
>a field called ID which is a text field, indexed (no dupes).
>
>I have another table called tblEvents. In tblEvents I have amongst others,
>two fields, Manager and Director. I am trying to create relationships between
>tblEvents.Manager and tblPeople.ID, and also between tblEvents.Director and
>tblPeople.ID. I have done that.
>
>What I can't do though, is set Referential Integrity with Cascading Updates
>so that if a person's ID changes (which it can, since it is an ID Badge
>Number) it updates the records in tblEvents.
>
>Any ideas?

Gina's advice is probably your best solution, but as an alternative, you might
want to consider something that some people would consider heretical: get rid
of the tblPeople autonumber altogether, and make ID the Primary Key. I believe
that Cascade Update applies only to the Primary Key field, not to other
uniquely indexed fields.
--

John W. Vinson [MVP]
From: Steve Haack on
Gina,
Thanks for the reply and information. The message that I get is: "Access
can't enforce the referential integrity for this relationship. Make sure the
fields you drag are PK fields or uniquely indexed and that the unique index
or PK is correctly set."

The thing is, I have tblPeople linked to another table on the ID field (but
only on link, not two) and it works perfectly.

I am going to look into your suggestion to see if that will work.

Thanks,
Steve

"Gina Whipp" wrote:

> Steve,
>
> Ummm, do you get a message? What happens when you try?
>
> I'm going to make a suggestion here... I would have set up the table
> differently...
>
> tblPeople
> pPeopleID (PK - Autonumber)
> pBadgeID (Set to no duplicates but I can change when I like)
>
> tblEvents
> eEventID (PK)
> eDirector (FK-linked to pPeopleID)
> eManager (FK-linked to pPeopleID)
>
> The above way allows you to set Referential Integrity without worrying about
> Cascading Updates. A Primary Key should be used to relate records and you
> should not care what it is. Okay, enough with my two cents worth!
>
> --
> Gina Whipp
>
> "I feel I have been denied critical, need to know, information!" - Tremors
> II
>
> http://www.regina-whipp.com/index_files/TipList.htm
>
> "Steve Haack" <SteveHaack(a)discussions.microsoft.com> wrote in message
> news:1BD0DBA1-593B-4327-81DD-BC1858A6915A(a)microsoft.com...
> >I have a field called tblPeople. It has an AutoNumber field as its PK, it
> >has
> > a field called ID which is a text field, indexed (no dupes).
> >
> > I have another table called tblEvents. In tblEvents I have amongst others,
> > two fields, Manager and Director. I am trying to create relationships
> > between
> > tblEvents.Manager and tblPeople.ID, and also between tblEvents.Director
> > and
> > tblPeople.ID. I have done that.
> >
> > What I can't do though, is set Referential Integrity with Cascading
> > Updates
> > so that if a person's ID changes (which it can, since it is an ID Badge
> > Number) it updates the records in tblEvents.
> >
> > Any ideas?
>
>
> .
>
From: Steve Haack on
Gina,
Can you tell me what you mean by FK?

"Gina Whipp" wrote:

> Steve,
>
> Ummm, do you get a message? What happens when you try?
>
> I'm going to make a suggestion here... I would have set up the table
> differently...
>
> tblPeople
> pPeopleID (PK - Autonumber)
> pBadgeID (Set to no duplicates but I can change when I like)
>
> tblEvents
> eEventID (PK)
> eDirector (FK-linked to pPeopleID)
> eManager (FK-linked to pPeopleID)
>
> The above way allows you to set Referential Integrity without worrying about
> Cascading Updates. A Primary Key should be used to relate records and you
> should not care what it is. Okay, enough with my two cents worth!
>
> --
> Gina Whipp
>
> "I feel I have been denied critical, need to know, information!" - Tremors
> II
>
> http://www.regina-whipp.com/index_files/TipList.htm
>
> "Steve Haack" <SteveHaack(a)discussions.microsoft.com> wrote in message
> news:1BD0DBA1-593B-4327-81DD-BC1858A6915A(a)microsoft.com...
> >I have a field called tblPeople. It has an AutoNumber field as its PK, it
> >has
> > a field called ID which is a text field, indexed (no dupes).
> >
> > I have another table called tblEvents. In tblEvents I have amongst others,
> > two fields, Manager and Director. I am trying to create relationships
> > between
> > tblEvents.Manager and tblPeople.ID, and also between tblEvents.Director
> > and
> > tblPeople.ID. I have done that.
> >
> > What I can't do though, is set Referential Integrity with Cascading
> > Updates
> > so that if a person's ID changes (which it can, since it is an ID Badge
> > Number) it updates the records in tblEvents.
> >
> > Any ideas?
>
>
> .
>