Re: Eliminating Combinatorial Relationship Multiplication

From: --CELKO-- <jcelko212_at_earthlink.net>
Date: 2 Jul 2004 08:40:16 -0700
Message-ID: <18c7b3c2.0407020740.2fa1cf80_at_posting.google.com>


>> Just wanted to double check: by "separating the nodes from the
tree" do you mean doing this (using path enumeration model): <<

Where is the DDL? What you posted was useless on several levels. NEVER use something as vague as "id" for a column name. NEVER, NEVER, NEVER name a data element for its current location -- node_id always a node_id wherever it appears. This is fundamental data modeling -- name thing s for what they are in the logical model, not for how or where they are PHYSICALLY stored or how they are used in one place.

I think that you might have meant this:

CREATE TABLE Nodes
(node_id INTEGER NOT NULL PRIMARY KEY,
 node_name CHAR(20) NOT NULL,
  ... );

CREATE TABLE Tree
(node_id INTEGER NOT NULL

         REFERENCES Nodes (node_id)
         ON UPDATE CASCADE
         ON DELETE CASCADE,
 path VARCHAR(100) NOT NULL
      CHECK (<< valid path predicate >>),
 .. );

Now you need to decide how to handle DRI actions; I made a guess. And how you want to build the path string - letters, digits, fixed or variable substring components, etc. Received on Fri Jul 02 2004 - 17:40:16 CEST

Original text of this message