I’ve seen the same problem in the latest version of Alzabo from CPAN.  I am unable to create foreign keys in a new schema, although the foreign keys in the Apprentice database still work ok. If I create a relationship between to tables, even if I can get Alzabo to create it, it is lost almost straight away.
I’ve also seen the disappearing reappearing relationship thing.  What error information do you need on this?
As an aside could anyone point me in the right direction of another way to create foreign keys using Alzabo, maybe from Perl. I really need to get this working, as at the moment I can’t do joins using Alzabo because of it. :(
[ cc'd back to Alzabo list ]
 On Fri, 17 Jan 2003, Ijon Tichy wrote:
 > There are a few problems with the relationships feature, however. When
 > adding a relationship and letting Alzabo choose the foreign key,
 > Alzabo chokes with Perl errors. (Of course, I wanted to check this
 > again and quote the exact error, but this time it did work. It was a
 > missing method somewhere in Alzabo::Schema::Column) Also, when
 Uh, that's gonna be hard to fix ;)
 Anyone else seen anything like this with the latest version?  I know there
 have been similar bugs in the past, but I haven't seen anything like this
 for a while.
 > deleting a relationship and adding another one in its place (which is
 > a workaround for editing one, for example, if I got the cardinality or
 > comment fields wrong the first time), the deletion "happens" only in
 > one table view -- when looking at the other table the relationship is
 > in, I see ghosts of the old relationship. Deleting one now removes
 > both the ghost one, and the one that is wanted.
 This is a problem with the current internals, which create two
 Alzabo::ForeignKey objects when you create a relationship.  The two
 objects are basically independent and each is owned by one of the tables.
 I've had a todo item on the list for a while to fix this and create a
 single object, which has two different "perspectives", depending on which
 table you fetch it from.  But any changes involving the internals are a
 real pain, because I have to upgrade existing older schemas by poking
 around directly in their internals, which can be tricky.  Half the time,
 I've forgotten the internals cause I'm used to accessing everything by
 method ;)
 House Absolute Consulting