Welcome to dbForumz.com!
FAQFAQ    SearchSearch      ProfileProfile    Private MessagesPrivate Messages   Log inLog in

Modelling Cars & Calculating Total Cost with dbd

 
   Database Forums (Home) -> Object-Oriented RSS
Next:  Querying for Pilots Who Fly All Jets in dbd  
Author Message
neo55592

External


Since: Dec 06, 2004
Posts: 480



(Msg. 1) Posted: Wed Nov 22, 2006 4:04 pm
Post subject: Modelling Cars & Calculating Total Cost with dbd
Archived from groups: comp>databases>object (more info?)

Below is a dbd example that models parts that make up a Civic LE and
Civic SE. Each has a different engine configuration and transmission
however some parts like starter and gears are shared. Queries return
parts of each car. Queries calculate cost of car by summing cost of sub
parts.

Data Modelled:
CivicLE
EngineCfg1
1.5L Engine
Starter1
Gear2
Manual Transmission
Gear1

CivicSE
EngineCfg2
1.6L Engine
Starter1
Gear2
Automatic Transmission
Gear1


(new 'cost)

(new 'starter1 'starter)
(create starter1 cost (val+ '100))

(new 'eng_1.5L 'engine)
(create eng_1.5L part starter1)
(create eng_1.5L cost (val+ '1000))


(new 'eng_1.6L 'engine)
(create eng_1.6L part starter1)
(create eng_1.6L cost (val+ '1300))


(new 'gear1 'gear)
(create gear1 cost (val+ '5))

(new 'gear2 'gear)
(create gear2 cost (val+ '6))

(new 'trans_manual 'transmission)
(create trans_manual part gear1)
(create trans_manual cost (val+ '500))

(new 'trans_auto 'transmission)
(create trans_auto part gear1)
(create trans_auto cost (val+ '700))

(new 'engCfg1 'engineConfig)
(create engCfg1 part eng_1.5L)
(create engCfg1 part gear2)

(new 'engCfg2 'engineConfig)
(create engCfg2 part eng_1.6L)
(create engCfg2 part gear2)


(new 'honda 'mfg)

(new 'civic_le 'civic 'car)
(create civic_le mfg honda)
(create civic_le part engCfg1)
(create civic_le part trans_manual)


(new 'civic_se 'civic 'car)
(create civic_se mfg honda)
(create civic_se part engCfg2)
(create civic_se part trans_auto)


(; Find parts of civic_le)
(; Returns, engCfg1, eng_1.5L, starter1, gear2, trans_manual, gear1)
(selectRel civic_le part *)

(; Find parts of civic_se)
(; Returns, engCfg2, eng_1.6L, starter1, gear2, trans_auto, gear1)
(selectRel civic_se part *)


(; Get sum of civic_le part costs)
(; Return 1611)
(sum (select (getElem (selectRel civic_le part *)) cost *))


(; Get sum of civic_se part costs)
(; Returns 2111)
(sum (select (getElem (selectRel civic_se part *)) cost *))


For additional examples, see www.dbfordummies.com/example/Default.asp

 >> Stay informed about: Modelling Cars & Calculating Total Cost with dbd 
Back to top
Login to vote
Display posts from previous:   
   Database Forums (Home) -> Object-Oriented All times are: Pacific Time (US & Canada)
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You can edit your posts in this forum
You can delete your posts in this forum
You can vote in polls in this forum



[ Contact us | Terms of Service/Privacy Policy ]