Re: Uneducated Ego-Puffed Idiot, Ignoramus, Troll
Date: 20 Feb 2005 18:36:59 -0800
Message-ID: <1108953419.126194.66060_at_o13g2000cwo.googlegroups.com>
> Your goals do not align with anything I care about.
IBM U2's white paper
(ftp://ftp.software.ibm.com/software/data/u2/pubs/whitepapers/nested_rdbms.pdf)
describes an extended relational technology that provides a better way
of storing complex data (ie nested relations) than traditional
relational techology which suffere 1NF limitations. They claim to have
a technological lead of several year over their closest competitor.
According to the paper, here is how an example is implemented in SQL:
CREATE TABLE CUSTOMER_TABLE (CUST# CHAR(9)
DISP ("Customer #"), CUST_NAME CHAR (40)
DISP ("Customer Name"));
CREATE TABLE ORDER_TABLE (ORDER_# NUMBER (6)
DISP ("ORDER #"), PART_# NUMBER (6) DISP ("Part
#"), QTY NUMBER (3) DISP("Qty."));
CREATE TABLE ORDER_CUST (CUST_# CHAR (9)
DISP ("Customer #"), ORDER_# DISP ("Order #")
Number (6));
And here is how its implemented with IBM's nested relational database: CREATE TABLE NESTED_TABLE (CUST# CHAR (9) DISP ("Customer #),
CUST_NAME CHAR (40) DISP ("Customer Name"), ORDER_# NUMBER (6) DISP ("Order #") SM ("MV") ASSOC ("ORDERS"), PART_# NUMBER (6) DISP (Part #") SM ("MS") ASSOC ("ORDERS"),QTY NUMBER (3) DISP ("Qty.") SM ("MS") ASSOC ("ORDERS"));
Now lets see how to do it with XDb3. First, the user doesn't have to
design a schema. User simply enters data. The data is the schema!
(dbdebunk.com encourages you to figure out "what is wrong with the
picture" painted by that definition, along with my other ones)
Below shows how a user models the first four order details using XDb3. Note, it doesn't model company# as it is mostly irrelevant to nested relations. The result of the script below can be veiwed in either the tree or grid (without user having to create a view or write joins) as shown at www.xdb3.com/example/ex305.asp
// Create dir items to organize things
(CREATE dir item *detail)
(CREATE dir item *company)
(CREATE dir item *order#)
(CREATE dir item *part#)
(CREATE dir item *qty)
// Create order details.
(CREATE detail company +Zedco order# +93-1123 part# +037617 qty +81)
(CREATE detail company +Zedco order# +93-1123 part# +053135 qty +36)
(CREATE detail company +Zedco order# +93-1154 part# +037617 qty +32)
(CREATE detail company +Zedco order# +93-1154 part# +063364 qty +39)
Yup, that's all.
In the grid, it looks like this:
company order# part# qty
------- ------- ------ ---
Zedco 93-1123 037617 81
053135 36 93-1154 037617 32 063364 39
In the tree, it looks like this:
detail
-company-
Zedco -order#- 93-1123 -part#- 037617 -qty- 81 053135 -qty- 36 93-1154 -part#- 037617 -qty- 32 063364 -qty- 39
XDb3 doesn't do much else, yet, but by haphazardly banging away at the keyboard like an army of idiots, its only a matter of time before a random sequence of assembly instructions coincides with some fruitful code. Received on Mon Feb 21 2005 - 03:36:59 CET