[ic] Databases and IC; RE to Switching Databases

LM lmorley@flexihost.com
Mon, 12 Mar 2001 21:27:44 -0800

Hi, all - thanks for the help - its helped me to figure out quite a few
I'd still be pulling my hair out over.  I made a few some discoveries along
the way too that I probably wouldn't have otherwise (at least not very
readily) .  In part this a reply to an earlier post I made as to what they

Still have one unanswered Q - is there an easy/directly supported way to
switch a given table (within a catalog) from using an SQL database to, say,
gdbm, or text?  The system does this for several tables - 2ndDayAir,
Ground, and 4 others aren't in my SQL database so I'm assuming its
possible; just can't quite figure out how (yet).


Here's what I've (I think) figured out, at least to a degree:

The database name for a catalog seems to be set in catalog.cfg.  I'm using a
DBI/SQL db; changing this name lets me switch over to a different DBI/SQL
database.  I plan to set up a few other scenarios and run some diff's to see
what changed for other db types etc.  If anyone is curious I'd be more than
happy to send you what I find.

After looking over (in /usr/lib/interchange/lib in my case) Vend/Data.pm,
Vend/Config.pm, and UI/usertag/dbinfo the contents of my products.dbm
make a little more sense:

   Database       products       products.txt       TAB
   Database       products       HOT                  1
   Database       products       INDEX              category:c

The HOT keyword seems to make "auto-export" work when editing
items from within the IC admin interface; changes I make there show up
in products.txt too (as long as the "auto-export" checkbox is checked -
it is by default).  INDEX indicates a char field index on "category".


Can anyone with a more IC experiece confirm that the above is accurate?

Also, is there really anything wrong with the "test" database's structure
that'd make it problematic to use in a production system?  The structure of
it looks OK, but makecat made a point of saying it was a test database, so I
thought I would ask...