[ic] referential integrity/table constraints? - 4.8.6 and 4.9.5 for postgresql

Andrew C. interchange-users@icdevgroup.org
Thu Mar 27 13:55:01 2003


> I don't see why you can't create your table outside of IC and then
> just reference it.
You mean just use ITL and embedded perl to reference a table I have
created outside the IC mechanisms?  One time I added a column to a table
in postgres outside of Interchange.  I changed the table conf files just
so they would match (didn't know if I needed to) and never restarted IC
and never deleted the .sql file nor did I have the NoImport statement
set.  When I tried to write to the field in various ITL tags it would
not write to that newly created field.  Then "regenerated" the table by
deleting the producst/table.sql file and the new field could be written
to with the appropriate ITL tags?  I figured to use the ITL db insert,
update, select related tags I would have to use the IC method.  Does
this make sense?  That is why I thought it may cause problems developing
DB structure outside Interchange.

> Database foo CREATE_SQL  <<EOF
> create table foo (
>    ....
> )
> EOF
Where?  Would this would be the only entry in the appropriate config
file in DBConf?  So I could keep add statements like:
CREATE CONSTRAINT TRIGGER 
in this block?

Thanks for all of the help.

-------
Andrew



> -----Original Message-----
> From: interchange-users-admin@icdevgroup.org
[mailto:interchange-users-
> admin@icdevgroup.org] On Behalf Of Mike Heins
> Sent: Thursday, March 27, 2003 10:51 AM
> To: interchange-users@icdevgroup.org
> Subject: Re: [ic] referential integrity/table constraints? - 4.8.6 and
> 4.9.5 for postgresql
> 
> Quoting Andrew C. (linuxdev@musicalheritage.org):
> > March 27, 2003
> >
> > Hello icdevgroup.  I was just wondering if there is a way to enforce
> > referential integrity in interchange databases if I am using
Postgresql
> > with Interchange 4.8.6 and also 4.9.5?  Can foreign keys be used and
if
> > so how are they declared in the table configuration files in
/dbconf/
> 
> I don't see why you can't create your table outside of IC and then
> just reference it.
> 
> If you want to, you can use
> 
> Database foo CREATE_SQL  <<EOF
> create table foo (
>    ....
> )
> EOF
> 
> It will then be used instead of the stuff Interchange generates.
> 
> > Would I just have to run the sql statements after the postgres
database
> > I am using with IC has built the table from the text table
definition
> > files in /dbconf?
> 
> But why do that? If you want to have a complex structure wouldn't you
> create your database with other tools?
> 
> 
> > I am also slightly confused on table relationships in postgres?  I
> > thought setting up primary/foreign key relationships would enforce
> > referential integrity?  Where do Reference Constraints and
Constraint
> > Triggers come into play and how do they differ?
> >
> 
> There you are on your own. If you want to use such things, you have to
> supply the expertise.
> 
> Bottom line is that IC does not prevent you from using foreign key
> constraints;
> but it doesn't help you either.
> 
> --
> Mike Heins
> Perusion -- Expert Interchange Consulting    http://www.perusion.com/
> phone +1.513.523.7621      <mike@perusion.com>
> 
> In character, in manners, in style, in all things, the supreme
excellence
> is simplicity. -- Longfellow
> _______________________________________________
> interchange-users mailing list
> interchange-users@icdevgroup.org
> http://www.icdevgroup.org/mailman/listinfo/interchange-users